/
zz_generated_models.go
2136 lines (1673 loc) · 94.5 KB
/
zz_generated_models.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
//go:build go1.18
// +build go1.18
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// Code generated by Microsoft (R) AutoRest Code Generator.
// Changes may cause incorrect behavior and will be lost if the code is regenerated.
package armvideoanalyzer
import "time"
// AccessPoliciesClientCreateOrUpdateOptions contains the optional parameters for the AccessPoliciesClient.CreateOrUpdate
// method.
type AccessPoliciesClientCreateOrUpdateOptions struct {
// placeholder for future optional parameters
}
// AccessPoliciesClientDeleteOptions contains the optional parameters for the AccessPoliciesClient.Delete method.
type AccessPoliciesClientDeleteOptions struct {
// placeholder for future optional parameters
}
// AccessPoliciesClientGetOptions contains the optional parameters for the AccessPoliciesClient.Get method.
type AccessPoliciesClientGetOptions struct {
// placeholder for future optional parameters
}
// AccessPoliciesClientListOptions contains the optional parameters for the AccessPoliciesClient.List method.
type AccessPoliciesClientListOptions struct {
// Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the
// number of available items up to but not greater than the specified value n.
Top *int32
}
// AccessPoliciesClientUpdateOptions contains the optional parameters for the AccessPoliciesClient.Update method.
type AccessPoliciesClientUpdateOptions struct {
// placeholder for future optional parameters
}
// AccessPolicyEntity - Access policies help define the authentication rules, and control access to specific video resources.
type AccessPolicyEntity struct {
// The resource properties.
Properties *AccessPolicyProperties `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// AccessPolicyEntityCollection - A collection of AccessPolicyEntity items.
type AccessPolicyEntityCollection struct {
// A link to the next page of the collection (when the collection contains too many results to return in one response).
NextLink *string `json:"@nextLink,omitempty"`
// A collection of AccessPolicyEntity items.
Value []*AccessPolicyEntity `json:"value,omitempty"`
}
// AccessPolicyProperties - Application level properties for the access policy resource.
type AccessPolicyProperties struct {
// Authentication method to be used when validating client API access.
Authentication AuthenticationBaseClassification `json:"authentication,omitempty"`
// Defines the access level granted by this policy.
Role *AccessPolicyRole `json:"role,omitempty"`
}
// AccountEncryption - Defines how the Video Analyzer account is (optionally) encrypted.
type AccountEncryption struct {
// REQUIRED; The type of key used to encrypt the Account Key.
Type *AccountEncryptionKeyType `json:"type,omitempty"`
// The Key Vault identity.
Identity *ResourceIdentity `json:"identity,omitempty"`
// The properties of the key used to encrypt the account.
KeyVaultProperties *KeyVaultProperties `json:"keyVaultProperties,omitempty"`
// READ-ONLY; The current status of the Key Vault mapping.
Status *string `json:"status,omitempty" azure:"ro"`
}
// AudioEncoderAac - A custom preset for encoding audio with the AAC codec.
type AudioEncoderAac struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// Bitrate, in kilobits per second or Kbps, at which audio should be encoded (2-channel stereo audio at a sampling rate of
// 48 kHz). Allowed values are 96, 112, 128, 160, 192, 224, and 256. If omitted,
// the bitrate of the input audio is used.
BitrateKbps *string `json:"bitrateKbps,omitempty"`
}
// AudioEncoderBaseClassification provides polymorphic access to related types.
// Call the interface's GetAudioEncoderBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *AudioEncoderAac, *AudioEncoderBase
type AudioEncoderBaseClassification interface {
// GetAudioEncoderBase returns the AudioEncoderBase content of the underlying type.
GetAudioEncoderBase() *AudioEncoderBase
}
// AudioEncoderBase - Base type for all audio encoder presets, which define the recipe or instructions on how audio should
// be processed.
type AudioEncoderBase struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// Bitrate, in kilobits per second or Kbps, at which audio should be encoded (2-channel stereo audio at a sampling rate of
// 48 kHz). Allowed values are 96, 112, 128, 160, 192, 224, and 256. If omitted,
// the bitrate of the input audio is used.
BitrateKbps *string `json:"bitrateKbps,omitempty"`
}
// AuthenticationBaseClassification provides polymorphic access to related types.
// Call the interface's GetAuthenticationBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *AuthenticationBase, *JwtAuthentication
type AuthenticationBaseClassification interface {
// GetAuthenticationBase returns the AuthenticationBase content of the underlying type.
GetAuthenticationBase() *AuthenticationBase
}
// AuthenticationBase - Base class for access policies authentication methods.
type AuthenticationBase struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// CertificateSourceClassification provides polymorphic access to related types.
// Call the interface's GetCertificateSource() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *CertificateSource, *PemCertificateList
type CertificateSourceClassification interface {
// GetCertificateSource returns the CertificateSource content of the underlying type.
GetCertificateSource() *CertificateSource
}
// CertificateSource - Base class for certificate sources.
type CertificateSource struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// CheckNameAvailabilityRequest - The check availability request body.
type CheckNameAvailabilityRequest struct {
// The name of the resource for which availability needs to be checked.
Name *string `json:"name,omitempty"`
// The resource type.
Type *string `json:"type,omitempty"`
}
// CheckNameAvailabilityResponse - The check availability result.
type CheckNameAvailabilityResponse struct {
// Detailed reason why the given name is available.
Message *string `json:"message,omitempty"`
// Indicates if the resource name is available.
NameAvailable *bool `json:"nameAvailable,omitempty"`
// The reason why the given name is not available.
Reason *CheckNameAvailabilityReason `json:"reason,omitempty"`
}
// Collection - A collection of VideoAnalyzer items.
type Collection struct {
// A collection of VideoAnalyzer items.
Value []*VideoAnalyzer `json:"value,omitempty"`
}
// CredentialsBaseClassification provides polymorphic access to related types.
// Call the interface's GetCredentialsBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *CredentialsBase, *UsernamePasswordCredentials
type CredentialsBaseClassification interface {
// GetCredentialsBase returns the CredentialsBase content of the underlying type.
GetCredentialsBase() *CredentialsBase
}
// CredentialsBase - Base class for credential objects.
type CredentialsBase struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// EccTokenKey - Required validation properties for tokens generated with Elliptical Curve algorithm.
type EccTokenKey struct {
// REQUIRED; Elliptical curve algorithm to be used: ES256, ES384 or ES512.
Alg *AccessPolicyEccAlgo `json:"alg,omitempty"`
// REQUIRED; JWT token key id. Validation keys are looked up based on the key id present on the JWT token header.
Kid *string `json:"kid,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// REQUIRED; X coordinate.
X *string `json:"x,omitempty"`
// REQUIRED; Y coordinate.
Y *string `json:"y,omitempty"`
}
// EdgeModuleEntity - The representation of an edge module.
type EdgeModuleEntity struct {
// The resource properties.
Properties *EdgeModuleProperties `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// EdgeModuleEntityCollection - A collection of EdgeModuleEntity items.
type EdgeModuleEntityCollection struct {
// A link to the next page of the collection (when the collection contains too many results to return in one response).
NextLink *string `json:"@nextLink,omitempty"`
// A collection of EdgeModuleEntity items.
Value []*EdgeModuleEntity `json:"value,omitempty"`
}
// EdgeModuleProperties - Application level properties for the edge module resource.
type EdgeModuleProperties struct {
// READ-ONLY; Internal ID generated for the instance of the Video Analyzer edge module.
EdgeModuleID *string `json:"edgeModuleId,omitempty" azure:"ro"`
}
// EdgeModuleProvisioningToken - Provisioning token properties. A provisioning token allows for a single instance of Azure
// Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token
// itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial
// handshake, the IoT edge module will agree on a set of authentication keys
// which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token
// can be generated for the same IoT edge module in case the module state lost or
// reset.
type EdgeModuleProvisioningToken struct {
// READ-ONLY; The expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized
// and connected to the Internet prior to the token expiration date.
ExpirationDate *time.Time `json:"expirationDate,omitempty" azure:"ro"`
// READ-ONLY; The token blob to be provided to the Azure Video Analyzer IoT edge module through the Azure IoT Edge module
// twin properties.
Token *string `json:"token,omitempty" azure:"ro"`
}
// EdgeModulesClientCreateOrUpdateOptions contains the optional parameters for the EdgeModulesClient.CreateOrUpdate method.
type EdgeModulesClientCreateOrUpdateOptions struct {
// placeholder for future optional parameters
}
// EdgeModulesClientDeleteOptions contains the optional parameters for the EdgeModulesClient.Delete method.
type EdgeModulesClientDeleteOptions struct {
// placeholder for future optional parameters
}
// EdgeModulesClientGetOptions contains the optional parameters for the EdgeModulesClient.Get method.
type EdgeModulesClientGetOptions struct {
// placeholder for future optional parameters
}
// EdgeModulesClientListOptions contains the optional parameters for the EdgeModulesClient.List method.
type EdgeModulesClientListOptions struct {
// Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the
// number of available items up to but not greater than the specified value n.
Top *int32
}
// EdgeModulesClientListProvisioningTokenOptions contains the optional parameters for the EdgeModulesClient.ListProvisioningToken
// method.
type EdgeModulesClientListProvisioningTokenOptions struct {
// placeholder for future optional parameters
}
// EncoderCustomPreset - Describes a custom preset for encoding the input content using the encoder processor.
type EncoderCustomPreset struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// Describes a custom preset for encoding audio.
AudioEncoder AudioEncoderBaseClassification `json:"audioEncoder,omitempty"`
// Describes a custom preset for encoding video.
VideoEncoder VideoEncoderBaseClassification `json:"videoEncoder,omitempty"`
}
// EncoderPresetBaseClassification provides polymorphic access to related types.
// Call the interface's GetEncoderPresetBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *EncoderCustomPreset, *EncoderPresetBase, *EncoderSystemPreset
type EncoderPresetBaseClassification interface {
// GetEncoderPresetBase returns the EncoderPresetBase content of the underlying type.
GetEncoderPresetBase() *EncoderPresetBase
}
// EncoderPresetBase - Base type for all encoder presets, which define the recipe or instructions on how the input content
// should be processed.
type EncoderPresetBase struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// EncoderProcessor - Encoder processor allows for encoding of the input content. For example, it can used to change the resolution
// from 4K to 1280x720.
type EncoderProcessor struct {
// REQUIRED; An array of upstream node references within the topology to be used as inputs for this node.
Inputs []*NodeInput `json:"inputs,omitempty"`
// REQUIRED; Node name. Must be unique within the topology.
Name *string `json:"name,omitempty"`
// REQUIRED; The encoder preset, which defines the recipe or instructions on how the input content should be processed.
Preset EncoderPresetBaseClassification `json:"preset,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// EncoderSystemPreset - Describes a built-in preset for encoding the input content using the encoder processor.
type EncoderSystemPreset struct {
// REQUIRED; Name of the built-in encoding preset.
Name *EncoderSystemPresetType `json:"name,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// Endpoint - The endpoint details.
type Endpoint struct {
// REQUIRED; The type of the endpoint.
Type *VideoAnalyzerEndpointType `json:"type,omitempty"`
// The URL of the endpoint.
EndpointURL *string `json:"endpointUrl,omitempty"`
}
// EndpointBaseClassification provides polymorphic access to related types.
// Call the interface's GetEndpointBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *EndpointBase, *TLSEndpoint, *UnsecuredEndpoint
type EndpointBaseClassification interface {
// GetEndpointBase returns the EndpointBase content of the underlying type.
GetEndpointBase() *EndpointBase
}
// EndpointBase - Base class for endpoints.
type EndpointBase struct {
// REQUIRED; Credentials to be presented to the endpoint.
Credentials CredentialsBaseClassification `json:"credentials,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// REQUIRED; The endpoint URL for Video Analyzer to connect to.
URL *string `json:"url,omitempty"`
// Describes the tunnel through which Video Analyzer can connect to the endpoint URL. This is an optional property, typically
// used when the endpoint is behind a firewall.
Tunnel TunnelBaseClassification `json:"tunnel,omitempty"`
}
// ErrorAdditionalInfo - The resource management error additional info.
type ErrorAdditionalInfo struct {
// READ-ONLY; The additional info.
Info interface{} `json:"info,omitempty" azure:"ro"`
// READ-ONLY; The additional info type.
Type *string `json:"type,omitempty" azure:"ro"`
}
// ErrorDetail - The error detail.
type ErrorDetail struct {
// READ-ONLY; The error additional info.
AdditionalInfo []*ErrorAdditionalInfo `json:"additionalInfo,omitempty" azure:"ro"`
// READ-ONLY; The error code.
Code *string `json:"code,omitempty" azure:"ro"`
// READ-ONLY; The error details.
Details []*ErrorDetail `json:"details,omitempty" azure:"ro"`
// READ-ONLY; The error message.
Message *string `json:"message,omitempty" azure:"ro"`
// READ-ONLY; The error target.
Target *string `json:"target,omitempty" azure:"ro"`
}
// ErrorResponse - Common error response for all Azure Resource Manager APIs to return error details for failed operations.
// (This also follows the OData error response format.).
type ErrorResponse struct {
// The error object.
Error *ErrorDetail `json:"error,omitempty"`
}
// GroupLevelAccessControl - Group level network access control.
type GroupLevelAccessControl struct {
// Whether or not public network access is allowed for specified resources under the Video Analyzer account.
PublicNetworkAccess *PublicNetworkAccess `json:"publicNetworkAccess,omitempty"`
}
// Identity - The managed identity for the Video Analyzer resource.
type Identity struct {
// REQUIRED; The identity type.
Type *string `json:"type,omitempty"`
// The User Assigned Managed Identities.
UserAssignedIdentities map[string]*UserAssignedManagedIdentity `json:"userAssignedIdentities,omitempty"`
}
// IotHub - The IoT Hub details.
type IotHub struct {
// REQUIRED; The IoT Hub resource identifier.
ID *string `json:"id,omitempty"`
// REQUIRED; The IoT Hub identity.
Identity *ResourceIdentity `json:"identity,omitempty"`
// READ-ONLY; The current status of the Iot Hub mapping.
Status *string `json:"status,omitempty" azure:"ro"`
}
// JwtAuthentication - Properties for access validation based on JSON Web Tokens (JWT).
type JwtAuthentication struct {
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
// List of expected token audiences. Token audience is valid if it matches at least one of the given values.
Audiences []*string `json:"audiences,omitempty"`
// List of additional token claims to be validated. Token must contains all claims and respective values for it to be valid.
Claims []*TokenClaim `json:"claims,omitempty"`
// List of expected token issuers. Token issuer is valid if it matches at least one of the given values.
Issuers []*string `json:"issuers,omitempty"`
// List of keys which can be used to validate access tokens. Having multiple keys allow for seamless key rotation of the token
// signing key. Token signature must match exactly one key.
Keys []TokenKeyClassification `json:"keys,omitempty"`
}
// KeyVaultProperties - The details for accessing the encryption keys in Key Vault.
type KeyVaultProperties struct {
// REQUIRED; The URL of the Key Vault key used to encrypt the account. The key may either be versioned (for example https://vault/keys/mykey/version1)
// or reference a key without a version (for example
// https://vault/keys/mykey).
KeyIdentifier *string `json:"keyIdentifier,omitempty"`
// READ-ONLY; The current key used to encrypt Video Analyzer account, including the key version.
CurrentKeyIdentifier *string `json:"currentKeyIdentifier,omitempty" azure:"ro"`
}
// ListProvisioningTokenInput - The input parameters to generate registration token for the Azure Video Analyzer IoT edge
// module.
type ListProvisioningTokenInput struct {
// REQUIRED; The desired expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized
// and connected to the Internet prior to the token expiration date.
ExpirationDate *time.Time `json:"expirationDate,omitempty"`
}
// LivePipeline - Live pipeline represents a unique instance of a live topology, used for real-time ingestion, archiving and
// publishing of content for a unique RTSP camera.
type LivePipeline struct {
// The resource properties.
Properties *LivePipelineProperties `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// LivePipelineCollection - A collection of LivePipeline items.
type LivePipelineCollection struct {
// A link to the next page of the collection (when the collection contains too many results to return in one response).
NextLink *string `json:"@nextLink,omitempty"`
// A collection of LivePipeline items.
Value []*LivePipeline `json:"value,omitempty"`
}
// LivePipelineOperationStatus - Used for tracking the status of an operation on the live pipeline.
type LivePipelineOperationStatus struct {
// READ-ONLY; The error details for the live pipeline operation.
Error *ErrorDetail `json:"error,omitempty" azure:"ro"`
// READ-ONLY; The name of the live pipeline operation.
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; The status of the live pipeline operation.
Status *string `json:"status,omitempty" azure:"ro"`
}
// LivePipelineOperationStatusesClientGetOptions contains the optional parameters for the LivePipelineOperationStatusesClient.Get
// method.
type LivePipelineOperationStatusesClientGetOptions struct {
// placeholder for future optional parameters
}
// LivePipelineProperties - Live pipeline properties.
type LivePipelineProperties struct {
// REQUIRED; Maximum bitrate capacity in Kbps reserved for the live pipeline. The allowed range is from 500 to 3000 Kbps in
// increments of 100 Kbps. If the RTSP camera exceeds this capacity, then the service will
// disconnect temporarily from the camera. It will retry to re-establish connection (with exponential backoff), checking to
// see if the camera bitrate is now below the reserved capacity. Doing so will
// ensure that one 'noisy neighbor' does not affect other live pipelines in your account.
BitrateKbps *int32 `json:"bitrateKbps,omitempty"`
// REQUIRED; The reference to an existing pipeline topology defined for real-time content processing. When activated, this
// live pipeline will process content according to the pipeline topology definition.
TopologyName *string `json:"topologyName,omitempty"`
// An optional description for the pipeline.
Description *string `json:"description,omitempty"`
// List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override
// parameters values for parameters which have been declared in the referenced
// topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be
// optionally be overridden.
Parameters []*ParameterDefinition `json:"parameters,omitempty"`
// READ-ONLY; Current state of the pipeline (read-only).
State *LivePipelineState `json:"state,omitempty" azure:"ro"`
}
// LivePipelinePropertiesUpdate - Live pipeline properties.
type LivePipelinePropertiesUpdate struct {
// Maximum bitrate capacity in Kbps reserved for the live pipeline. The allowed range is from 500 to 3000 Kbps in increments
// of 100 Kbps. If the RTSP camera exceeds this capacity, then the service will
// disconnect temporarily from the camera. It will retry to re-establish connection (with exponential backoff), checking to
// see if the camera bitrate is now below the reserved capacity. Doing so will
// ensure that one 'noisy neighbor' does not affect other live pipelines in your account.
BitrateKbps *int32 `json:"bitrateKbps,omitempty"`
// An optional description for the pipeline.
Description *string `json:"description,omitempty"`
// List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override
// parameters values for parameters which have been declared in the referenced
// topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be
// optionally be overridden.
Parameters []*ParameterDefinition `json:"parameters,omitempty"`
// The reference to an existing pipeline topology defined for real-time content processing. When activated, this live pipeline
// will process content according to the pipeline topology definition.
TopologyName *string `json:"topologyName,omitempty"`
// READ-ONLY; Current state of the pipeline (read-only).
State *LivePipelineState `json:"state,omitempty" azure:"ro"`
}
// LivePipelineUpdate - Live pipeline represents a unique instance of a live topology, used for real-time ingestion, archiving
// and publishing of content for a unique RTSP camera.
type LivePipelineUpdate struct {
// The resource properties.
Properties *LivePipelinePropertiesUpdate `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// LivePipelinesClientBeginActivateOptions contains the optional parameters for the LivePipelinesClient.BeginActivate method.
type LivePipelinesClientBeginActivateOptions struct {
// Resumes the LRO from the provided token.
ResumeToken string
}
// LivePipelinesClientBeginDeactivateOptions contains the optional parameters for the LivePipelinesClient.BeginDeactivate
// method.
type LivePipelinesClientBeginDeactivateOptions struct {
// Resumes the LRO from the provided token.
ResumeToken string
}
// LivePipelinesClientCreateOrUpdateOptions contains the optional parameters for the LivePipelinesClient.CreateOrUpdate method.
type LivePipelinesClientCreateOrUpdateOptions struct {
// placeholder for future optional parameters
}
// LivePipelinesClientDeleteOptions contains the optional parameters for the LivePipelinesClient.Delete method.
type LivePipelinesClientDeleteOptions struct {
// placeholder for future optional parameters
}
// LivePipelinesClientGetOptions contains the optional parameters for the LivePipelinesClient.Get method.
type LivePipelinesClientGetOptions struct {
// placeholder for future optional parameters
}
// LivePipelinesClientListOptions contains the optional parameters for the LivePipelinesClient.List method.
type LivePipelinesClientListOptions struct {
// Restricts the set of items returned.
Filter *string
// Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the
// number of available items up to but not greater than the specified value n.
Top *int32
}
// LivePipelinesClientUpdateOptions contains the optional parameters for the LivePipelinesClient.Update method.
type LivePipelinesClientUpdateOptions struct {
// placeholder for future optional parameters
}
// LocationsClientCheckNameAvailabilityOptions contains the optional parameters for the LocationsClient.CheckNameAvailability
// method.
type LocationsClientCheckNameAvailabilityOptions struct {
// placeholder for future optional parameters
}
// LogSpecification - A diagnostic log emitted by service.
type LogSpecification struct {
// READ-ONLY; The time range for requests in each blob.
BlobDuration *string `json:"blobDuration,omitempty" azure:"ro"`
// READ-ONLY; The diagnostic log category display name.
DisplayName *string `json:"displayName,omitempty" azure:"ro"`
// READ-ONLY; The diagnostic log category name.
Name *string `json:"name,omitempty" azure:"ro"`
}
// MetricDimension - A metric dimension.
type MetricDimension struct {
// READ-ONLY; The display name for the dimension.
DisplayName *string `json:"displayName,omitempty" azure:"ro"`
// READ-ONLY; The metric dimension name.
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Whether to export metric to shoebox.
ToBeExportedForShoebox *bool `json:"toBeExportedForShoebox,omitempty" azure:"ro"`
}
// MetricProperties - Metric properties.
type MetricProperties struct {
// READ-ONLY; The service specifications.
ServiceSpecification *ServiceSpecification `json:"serviceSpecification,omitempty" azure:"ro"`
}
// MetricSpecification - A metric emitted by service.
type MetricSpecification struct {
// Supported aggregation types.
SupportedAggregationTypes []*string `json:"supportedAggregationTypes,omitempty"`
// READ-ONLY; The metric aggregation type
AggregationType *MetricAggregationType `json:"aggregationType,omitempty" azure:"ro"`
// READ-ONLY; The metric dimensions.
Dimensions []*MetricDimension `json:"dimensions,omitempty" azure:"ro"`
// READ-ONLY; The metric display description.
DisplayDescription *string `json:"displayDescription,omitempty" azure:"ro"`
// READ-ONLY; The metric display name.
DisplayName *string `json:"displayName,omitempty" azure:"ro"`
// READ-ONLY; Indicates whether regional MDM account is enabled.
EnableRegionalMdmAccount *bool `json:"enableRegionalMdmAccount,omitempty" azure:"ro"`
// READ-ONLY; The metric lock aggregation type
LockAggregationType *MetricAggregationType `json:"lockAggregationType,omitempty" azure:"ro"`
// READ-ONLY; The metric name.
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; The source MDM account.
SourceMdmAccount *string `json:"sourceMdmAccount,omitempty" azure:"ro"`
// READ-ONLY; The source MDM namespace.
SourceMdmNamespace *string `json:"sourceMdmNamespace,omitempty" azure:"ro"`
// READ-ONLY; The supported time grain types.
SupportedTimeGrainTypes []*string `json:"supportedTimeGrainTypes,omitempty" azure:"ro"`
// READ-ONLY; The metric unit
Unit *MetricUnit `json:"unit,omitempty" azure:"ro"`
}
// NetworkAccessControl - Network access control for video analyzer account.
type NetworkAccessControl struct {
// Public network access for consumption group.
Consumption *GroupLevelAccessControl `json:"consumption,omitempty"`
// Public network access for ingestion group.
Ingestion *GroupLevelAccessControl `json:"ingestion,omitempty"`
// Public network access for integration group.
Integration *GroupLevelAccessControl `json:"integration,omitempty"`
}
// NodeBaseClassification provides polymorphic access to related types.
// Call the interface's GetNodeBase() method to access the common type.
// Use a type switch to determine the concrete type. The possible types are:
// - *EncoderProcessor, *NodeBase, *ProcessorNodeBase, *RtspSource, *SinkNodeBase, *SourceNodeBase, *VideoSink, *VideoSource
type NodeBaseClassification interface {
// GetNodeBase returns the NodeBase content of the underlying type.
GetNodeBase() *NodeBase
}
// NodeBase - Base class for nodes.
type NodeBase struct {
// REQUIRED; Node name. Must be unique within the topology.
Name *string `json:"name,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// NodeInput - Describes an input signal to be used on a pipeline node.
type NodeInput struct {
// REQUIRED; The name of the upstream node in the pipeline which output is used as input of the current node.
NodeName *string `json:"nodeName,omitempty"`
}
// Operation - An operation.
type Operation struct {
// REQUIRED; The operation name.
Name *string `json:"name,omitempty"`
// Indicates the action type.
ActionType *ActionType `json:"actionType,omitempty"`
// The operation display name.
Display *OperationDisplay `json:"display,omitempty"`
// Whether the operation applies to data-plane.
IsDataAction *bool `json:"isDataAction,omitempty"`
// Origin of the operation.
Origin *string `json:"origin,omitempty"`
// Operation properties format.
Properties *MetricProperties `json:"properties,omitempty"`
}
// OperationCollection - A collection of Operation items.
type OperationCollection struct {
// A collection of Operation items.
Value []*Operation `json:"value,omitempty"`
}
// OperationDisplay - Operation details.
type OperationDisplay struct {
// The operation description.
Description *string `json:"description,omitempty"`
// The operation type.
Operation *string `json:"operation,omitempty"`
// The service provider.
Provider *string `json:"provider,omitempty"`
// Resource on which the operation is performed.
Resource *string `json:"resource,omitempty"`
}
// OperationResultsClientGetOptions contains the optional parameters for the OperationResultsClient.Get method.
type OperationResultsClientGetOptions struct {
// placeholder for future optional parameters
}
// OperationStatus - Status of video analyzer operation.
type OperationStatus struct {
// REQUIRED; Operation identifier.
Name *string `json:"name,omitempty"`
// Operation end time.
EndTime *string `json:"endTime,omitempty"`
// The error detail.
Error *ErrorDetail `json:"error,omitempty"`
// Operation resource ID.
ID *string `json:"id,omitempty"`
// Operation start time.
StartTime *string `json:"startTime,omitempty"`
// Operation status.
Status *string `json:"status,omitempty"`
}
// OperationStatusesClientGetOptions contains the optional parameters for the OperationStatusesClient.Get method.
type OperationStatusesClientGetOptions struct {
// placeholder for future optional parameters
}
// OperationsClientListOptions contains the optional parameters for the OperationsClient.List method.
type OperationsClientListOptions struct {
// placeholder for future optional parameters
}
// ParameterDeclaration - Single topology parameter declaration. Declared parameters can and must be referenced throughout
// the topology and can optionally have default values to be used when they are not defined in the
// pipelines.
type ParameterDeclaration struct {
// REQUIRED; Name of the parameter.
Name *string `json:"name,omitempty"`
// REQUIRED; Type of the parameter.
Type *ParameterType `json:"type,omitempty"`
// The default value for the parameter to be used if the pipeline does not specify a value.
Default *string `json:"default,omitempty"`
// Description of the parameter.
Description *string `json:"description,omitempty"`
}
// ParameterDefinition - Defines the parameter value of an specific pipeline topology parameter. See pipeline topology parameters
// for more information.
type ParameterDefinition struct {
// REQUIRED; Name of the parameter declared in the pipeline topology.
Name *string `json:"name,omitempty"`
// Parameter value to be applied on this specific pipeline.
Value *string `json:"value,omitempty"`
}
// PemCertificateList - A list of PEM formatted certificates.
type PemCertificateList struct {
// REQUIRED; PEM formatted public certificates. One certificate per entry.
Certificates []*string `json:"certificates,omitempty"`
// REQUIRED; The discriminator for derived types.
Type *string `json:"@type,omitempty"`
}
// PipelineJob - Pipeline job represents a unique instance of a batch topology, used for offline processing of selected portions
// of archived content.
type PipelineJob struct {
// The resource properties.
Properties *PipelineJobProperties `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// PipelineJobCollection - A collection of PipelineJob items.
type PipelineJobCollection struct {
// A link to the next page of the collection (when the collection contains too many results to return in one response).
NextLink *string `json:"@nextLink,omitempty"`
// A collection of PipelineJob items.
Value []*PipelineJob `json:"value,omitempty"`
}
// PipelineJobError - Details about the error for a failed pipeline job.
type PipelineJobError struct {
// The error code.
Code *string `json:"code,omitempty"`
// The error message.
Message *string `json:"message,omitempty"`
}
// PipelineJobOperationStatus - Used for tracking the status of an operation on the pipeline job.
type PipelineJobOperationStatus struct {
// READ-ONLY; The error details for the pipeline job operation.
Error *ErrorDetail `json:"error,omitempty" azure:"ro"`
// READ-ONLY; The name of the pipeline job operation.
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; The status of the pipeline job operation.
Status *string `json:"status,omitempty" azure:"ro"`
}
// PipelineJobOperationStatusesClientGetOptions contains the optional parameters for the PipelineJobOperationStatusesClient.Get
// method.
type PipelineJobOperationStatusesClientGetOptions struct {
// placeholder for future optional parameters
}
// PipelineJobProperties - Pipeline job properties.
type PipelineJobProperties struct {
// REQUIRED; Reference to an existing pipeline topology. When activated, this pipeline job will process content according
// to the pipeline topology definition.
TopologyName *string `json:"topologyName,omitempty"`
// An optional description for the pipeline.
Description *string `json:"description,omitempty"`
// List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override
// parameters values for parameters which have been declared in the referenced
// topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be
// optionally be overridden.
Parameters []*ParameterDefinition `json:"parameters,omitempty"`
// READ-ONLY; Details about the error, in case the pipeline job fails.
Error *PipelineJobError `json:"error,omitempty" azure:"ro"`
// READ-ONLY; The date-time by when this pipeline job will be automatically deleted from your account.
Expiration *time.Time `json:"expiration,omitempty" azure:"ro"`
// READ-ONLY; Current state of the pipeline (read-only).
State *PipelineJobState `json:"state,omitempty" azure:"ro"`
}
// PipelineJobPropertiesUpdate - Pipeline job properties.
type PipelineJobPropertiesUpdate struct {
// An optional description for the pipeline.
Description *string `json:"description,omitempty"`
// List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override
// parameters values for parameters which have been declared in the referenced
// topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be
// optionally be overridden.
Parameters []*ParameterDefinition `json:"parameters,omitempty"`
// Reference to an existing pipeline topology. When activated, this pipeline job will process content according to the pipeline
// topology definition.
TopologyName *string `json:"topologyName,omitempty"`
// READ-ONLY; Details about the error, in case the pipeline job fails.
Error *PipelineJobError `json:"error,omitempty" azure:"ro"`
// READ-ONLY; The date-time by when this pipeline job will be automatically deleted from your account.
Expiration *time.Time `json:"expiration,omitempty" azure:"ro"`
// READ-ONLY; Current state of the pipeline (read-only).
State *PipelineJobState `json:"state,omitempty" azure:"ro"`
}
// PipelineJobUpdate - Pipeline job represents a unique instance of a batch topology, used for offline processing of selected
// portions of archived content.
type PipelineJobUpdate struct {
// The resource properties.
Properties *PipelineJobPropertiesUpdate `json:"properties,omitempty"`
// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
ID *string `json:"id,omitempty" azure:"ro"`
// READ-ONLY; The name of the resource
Name *string `json:"name,omitempty" azure:"ro"`
// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
SystemData *SystemData `json:"systemData,omitempty" azure:"ro"`
// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
Type *string `json:"type,omitempty" azure:"ro"`
}
// PipelineJobsClientBeginCancelOptions contains the optional parameters for the PipelineJobsClient.BeginCancel method.
type PipelineJobsClientBeginCancelOptions struct {
// Resumes the LRO from the provided token.
ResumeToken string
}
// PipelineJobsClientCreateOrUpdateOptions contains the optional parameters for the PipelineJobsClient.CreateOrUpdate method.
type PipelineJobsClientCreateOrUpdateOptions struct {
// placeholder for future optional parameters
}
// PipelineJobsClientDeleteOptions contains the optional parameters for the PipelineJobsClient.Delete method.
type PipelineJobsClientDeleteOptions struct {
// placeholder for future optional parameters
}