azure_storage_blob/generated/models/enums.rs
1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the MIT License.
3//
4// Code generated by Microsoft (R) Rust Code Generator. DO NOT EDIT.
5
6/// The access tiers.
7#[derive(Clone, Debug, Eq, PartialEq)]
8pub enum AccessTier {
9 /// The Archive access tier.
10 Archive,
11
12 /// The Cold access tier.
13 Cold,
14
15 /// The Cool access tier.
16 Cool,
17
18 /// The Hot access tier.
19 Hot,
20
21 /// The P10 access tier.
22 P10,
23
24 /// The P15 access tier.
25 P15,
26
27 /// The P20 access tier.
28 P20,
29
30 /// The P30 access tier.
31 P30,
32
33 /// The P4 access tier.
34 P4,
35
36 /// The P40 access tier.
37 P40,
38
39 /// The P50 access tier.
40 P50,
41
42 /// The P6 access tier.
43 P6,
44
45 /// The P60 access tier.
46 P60,
47
48 /// The P70 access tier.
49 P70,
50
51 /// The P80 access tier.
52 P80,
53
54 /// The Premium access tier.
55 Premium,
56
57 /// Any other value not defined in `AccessTier`.
58 UnknownValue(String),
59}
60
61/// The account kind.
62#[derive(Clone, Copy, Debug, Eq, PartialEq)]
63pub enum AccountKind {
64 /// A blob storage account.
65 BlobStorage,
66
67 /// A block blob storage account.
68 BlockBlobStorage,
69
70 /// A file storage account.
71 FileStorage,
72
73 /// A general-purpose account.
74 Storage,
75
76 /// A storage V2 account.
77 StorageV2,
78}
79
80/// The archive status.
81#[derive(Clone, Debug, Eq, PartialEq)]
82pub enum ArchiveStatus {
83 /// The archive status is rehydrating pending to Cold.
84 RehydratePendingToCold,
85
86 /// The archive status is rehydrating pending to Cool.
87 RehydratePendingToCool,
88
89 /// The archive status is rehydrating pending to Hot.
90 RehydratePendingToHot,
91
92 /// Any other value not defined in `ArchiveStatus`.
93 UnknownValue(String),
94}
95
96/// The blob copy source tags types.
97#[derive(Clone, Copy, Debug, Eq, PartialEq)]
98pub enum BlobCopySourceTags {
99 /// The blob tags will be copied from the source.
100 Copy,
101
102 /// The blob tags will be replaced.
103 Replace,
104}
105
106/// The type of blob deletions.
107#[derive(Clone, Copy, Debug, Eq, PartialEq)]
108pub enum BlobDeleteType {
109 /// Permanently delete the blob.
110 Permanent,
111}
112
113/// The blob type.
114#[derive(Clone, Copy, Debug, Eq, PartialEq)]
115pub enum BlobType {
116 /// The blob is an append blob.
117 AppendBlob,
118
119 /// The blob is a block blob.
120 BlockBlob,
121
122 /// The blob is a page blob.
123 PageBlob,
124}
125
126/// The block list types.
127#[derive(Clone, Copy, Debug, Eq, PartialEq)]
128pub enum BlockListType {
129 /// Both committed and uncommitted blocks.
130 All,
131
132 /// Committed blocks.
133 Committed,
134
135 /// Uncommitted blocks.
136 Uncommitted,
137}
138
139/// The copy status.
140#[derive(Clone, Copy, Debug, Eq, PartialEq)]
141pub enum CopyStatus {
142 /// The copy operation was aborted.
143 Aborted,
144
145 /// The copy operation failed.
146 Failed,
147
148 /// The copy operation is pending.
149 Pending,
150
151 /// The copy operation succeeded.
152 Success,
153}
154
155/// Specifies the delete behavior of blob snapshots.
156#[derive(Clone, Copy, Debug, Eq, PartialEq)]
157pub enum DeleteSnapshotsOptionType {
158 /// Delete the blob and snapshots.
159 Include,
160
161 /// Only delete the snapshots.
162 Only,
163}
164
165/// The algorithm used to produce the encryption key hash.
166#[derive(Clone, Copy, Debug, Eq, PartialEq)]
167pub enum EncryptionAlgorithmType {
168 /// The AES256 encryption algorithm.
169 Aes256,
170}
171
172/// The file share token intent types.
173#[derive(Clone, Debug, Eq, PartialEq)]
174pub enum FileShareTokenIntent {
175 /// The file share token intent is backup.
176 Backup,
177
178 /// Any other value not defined in `FileShareTokenIntent`.
179 UnknownValue(String),
180}
181
182/// Specifies what type of blobs should be returned as part of the filter operation.
183#[derive(Clone, Copy, Debug, Eq, PartialEq)]
184pub enum FilterBlobsIncludeItem {
185 /// The filter includes no versions.
186 None,
187
188 /// The filter includes versions.
189 Versions,
190}
191
192/// The geo-replication status.
193#[derive(Clone, Debug, Eq, PartialEq)]
194pub enum GeoReplicationStatusType {
195 /// Geo-replication is bootstrap.
196 Bootstrap,
197
198 /// Geo-replication is live.
199 Live,
200
201 /// Geo-replication is unavailable.
202 Unavailable,
203
204 /// Any other value not defined in `GeoReplicationStatusType`.
205 UnknownValue(String),
206}
207
208/// The immutability policy mode.
209#[derive(Clone, Copy, Debug, Eq, PartialEq)]
210pub enum ImmutabilityPolicyMode {
211 /// The immutability policy is locked.
212 Locked,
213
214 /// Response only. The immutability policy is mutable.
215 Mutable,
216
217 /// The immutability policy is unlocked.
218 Unlocked,
219}
220
221/// The lease duration.
222#[derive(Clone, Copy, Debug, Eq, PartialEq)]
223pub enum LeaseDuration {
224 /// The lease is of fixed duration.
225 Fixed,
226
227 /// The lease is of infinite duration.
228 Infinite,
229}
230
231/// The lease state.
232#[derive(Clone, Copy, Debug, Eq, PartialEq)]
233pub enum LeaseState {
234 /// The lease is available.
235 Available,
236
237 /// The lease is breaking.
238 Breaking,
239
240 /// The lease is broken.
241 Broken,
242
243 /// The lease is expired.
244 Expired,
245
246 /// The lease is currently leased.
247 Leased,
248}
249
250/// The lease status.
251#[derive(Clone, Copy, Debug, Eq, PartialEq)]
252pub enum LeaseStatus {
253 /// The lease is locked.
254 Locked,
255
256 /// The lease is unlocked.
257 Unlocked,
258}
259
260/// Specifies additional datasets to include when listing blobs in a container.
261#[derive(Clone, Copy, Debug, Eq, PartialEq)]
262pub enum ListBlobsIncludeItem {
263 /// Include copies.
264 Copy,
265
266 /// Include deleted blobs.
267 Deleted,
268
269 /// Include deleted with versions.
270 DeletedWithVersions,
271
272 /// Include immutability policies.
273 ImmutabilityPolicy,
274
275 /// Include legal hold.
276 LegalHold,
277
278 /// Include metadata.
279 Metadata,
280
281 /// Include snapshots.
282 Snapshots,
283
284 /// Include tags.
285 Tags,
286
287 /// Include uncommitted blobs.
288 UncommittedBlobs,
289
290 /// Include versions.
291 Versions,
292}
293
294/// Specifies what additional information should be returned as part of the list operation.
295#[derive(Clone, Copy, Debug, Eq, PartialEq)]
296pub enum ListContainersIncludeType {
297 /// Include soft-deleted containers.
298 Deleted,
299
300 /// Include metadata.
301 Metadata,
302
303 /// Include system containers.
304 System,
305}
306
307/// The premium page blob access tier types.
308#[derive(Clone, Debug, Eq, PartialEq)]
309pub enum PremiumPageBlobAccessTier {
310 /// The premium page blob access tier is P10.
311 P10,
312
313 /// The premium page blob access tier is P15.
314 P15,
315
316 /// The premium page blob access tier is P20.
317 P20,
318
319 /// The premium page blob access tier is P30.
320 P30,
321
322 /// The premium page blob access tier is P4.
323 P4,
324
325 /// The premium page blob access tier is P40.
326 P40,
327
328 /// The premium page blob access tier is P50.
329 P50,
330
331 /// The premium page blob access tier is P6.
332 P6,
333
334 /// The premium page blob access tier is P60.
335 P60,
336
337 /// The premium page blob access tier is P70.
338 P70,
339
340 /// The premium page blob access tier is P80.
341 P80,
342
343 /// Any other value not defined in `PremiumPageBlobAccessTier`.
344 UnknownValue(String),
345}
346
347/// The public access type.
348#[derive(Clone, Debug, Eq, PartialEq)]
349pub enum PublicAccessType {
350 /// Blob access.
351 Blob,
352
353 /// Container access.
354 Container,
355
356 /// Any other value not defined in `PublicAccessType`.
357 UnknownValue(String),
358}
359
360/// The priority of the rehydrate operation.
361#[derive(Clone, Debug, Eq, PartialEq)]
362pub enum RehydratePriority {
363 /// The rehydrate priority is high.
364 High,
365
366 /// The rehydrate priority is standard.
367 Standard,
368
369 /// Any other value not defined in `RehydratePriority`.
370 UnknownValue(String),
371}
372
373/// The sequence number actions.
374#[derive(Clone, Copy, Debug, Eq, PartialEq)]
375pub enum SequenceNumberActionType {
376 /// Increment the sequence number.
377 Increment,
378
379 /// Set the maximum for the sequence number.
380 Max,
381
382 /// Update the sequence number.
383 Update,
384}
385
386/// The account SKU.
387#[derive(Clone, Copy, Debug, Eq, PartialEq)]
388pub enum SkuName {
389 /// The premium LRS SKU.
390 PremiumLrs,
391
392 /// The premium ZRS SKU.
393 PremiumZrs,
394
395 /// The standard GRS SKU.
396 StandardGrs,
397
398 /// The standard GZRS SKU.
399 StandardGzrs,
400
401 /// The standard LRS SKU.
402 StandardLrs,
403
404 /// The standard RAGRS SKU.
405 StandardRagrs,
406
407 /// The standard RAGZRS SKU.
408 StandardRagzrs,
409
410 /// The standard ZRS SKU.
411 StandardZrs,
412}
413
414/// Error codes returned by the Azure Blob Storage service.
415#[derive(Clone, Debug, Eq, PartialEq)]
416pub enum StorageErrorCode {
417 /// Account already exists.
418 AccountAlreadyExists,
419
420 /// Account is being created.
421 AccountBeingCreated,
422
423 /// Account is disabled.
424 AccountIsDisabled,
425
426 /// Append position condition not met.
427 AppendPositionConditionNotMet,
428
429 /// Authentication failed.
430 AuthenticationFailed,
431
432 /// Authorization failure.
433 AuthorizationFailure,
434
435 /// Authorization permission mismatch.
436 AuthorizationPermissionMismatch,
437
438 /// Authorization protocol mismatch.
439 AuthorizationProtocolMismatch,
440
441 /// Authorization resource type mismatch.
442 AuthorizationResourceTypeMismatch,
443
444 /// Authorization service mismatch.
445 AuthorizationServiceMismatch,
446
447 /// Authorization source IP mismatch.
448 AuthorizationSourceIPMismatch,
449
450 /// Blob access tier not supported for account type.
451 BlobAccessTierNotSupportedForAccountType,
452
453 /// Blob already exists.
454 BlobAlreadyExists,
455
456 /// Blob archived.
457 BlobArchived,
458
459 /// Blob being rehydrated.
460 BlobBeingRehydrated,
461
462 /// Blob is immutable due to policy.
463 BlobImmutableDueToPolicy,
464
465 /// Blob not archived.
466 BlobNotArchived,
467
468 /// Blob not found.
469 BlobNotFound,
470
471 /// Blob overwritten.
472 BlobOverwritten,
473
474 /// Blob tier inadequate for content length.
475 BlobTierInadequateForContentLength,
476
477 /// Blob uses customer specified encryption.
478 BlobUsesCustomerSpecifiedEncryption,
479
480 /// Block count exceeds limit.
481 BlockCountExceedsLimit,
482
483 /// Block list too long.
484 BlockListTooLong,
485
486 /// Cannot change to lower tier.
487 CannotChangeToLowerTier,
488
489 /// Cannot verify copy source.
490 CannotVerifyCopySource,
491
492 /// Condition headers not supported.
493 ConditionHeadersNotSupported,
494
495 /// Condition not met.
496 ConditionNotMet,
497
498 /// Container already exists.
499 ContainerAlreadyExists,
500
501 /// Container being deleted.
502 ContainerBeingDeleted,
503
504 /// Container disabled.
505 ContainerDisabled,
506
507 /// Container not found.
508 ContainerNotFound,
509
510 /// Content length larger than tier limit.
511 ContentLengthLargerThanTierLimit,
512
513 /// Copy across accounts not supported.
514 CopyAcrossAccountsNotSupported,
515
516 /// Copy ID mismatch.
517 CopyIdMismatch,
518
519 /// Empty metadata key.
520 EmptyMetadataKey,
521
522 /// Feature version mismatch.
523 FeatureVersionMismatch,
524
525 /// Incremental copy blob mismatch.
526 IncrementalCopyBlobMismatch,
527
528 /// Incremental copy of an earlier snapshot is not allowed.
529 IncrementalCopyOfEarlierSnapshotNotAllowed,
530
531 /// Incremental copy of an earlier version snapshot is not allowed.
532 IncrementalCopyOfEarlierVersionSnapshotNotAllowed,
533
534 /// Incremental copy source must be snapshot.
535 IncrementalCopySourceMustBeSnapshot,
536
537 /// Infinite lease duration required.
538 InfiniteLeaseDurationRequired,
539
540 /// Insufficient account permissions.
541 InsufficientAccountPermissions,
542
543 /// Internal error.
544 InternalError,
545
546 /// Invalid authentication information.
547 InvalidAuthenticationInfo,
548
549 /// Invalid blob or block.
550 InvalidBlobOrBlock,
551
552 /// Invalid blob tier.
553 InvalidBlobTier,
554
555 /// Invalid blob type.
556 InvalidBlobType,
557
558 /// Invalid block ID.
559 InvalidBlockId,
560
561 /// Invalid block list.
562 InvalidBlockList,
563
564 /// Invalid header value.
565 InvalidHeaderValue,
566
567 /// Invalid HTTP verb.
568 InvalidHttpVerb,
569
570 /// Invalid input.
571 InvalidInput,
572
573 /// Invalid MD5.
574 InvalidMd5,
575
576 /// Invalid metadata.
577 InvalidMetadata,
578
579 /// Invalid operation.
580 InvalidOperation,
581
582 /// Invalid page range.
583 InvalidPageRange,
584
585 /// Invalid query parameter value.
586 InvalidQueryParameterValue,
587
588 /// Invalid range.
589 InvalidRange,
590
591 /// Invalid request URL.
592 InvalidRequestUrl,
593
594 /// Invalid resource name.
595 InvalidResourceName,
596
597 /// Invalid source blob type.
598 InvalidSourceBlobType,
599
600 /// Invalid source blob URL.
601 InvalidSourceBlobUrl,
602
603 /// Invalid URI.
604 InvalidUri,
605
606 /// Invalid version for page blob operation.
607 InvalidVersionForPageBlobOperation,
608
609 /// Invalid XML document.
610 InvalidXmlDocument,
611
612 /// Invalid XML node value.
613 InvalidXmlNodeValue,
614
615 /// Lease already broken.
616 LeaseAlreadyBroken,
617
618 /// Lease already present.
619 LeaseAlreadyPresent,
620
621 /// Lease ID mismatch with blob operation.
622 LeaseIdMismatchWithBlobOperation,
623
624 /// Lease ID mismatch with container operation.
625 LeaseIdMismatchWithContainerOperation,
626
627 /// Lease ID mismatch with lease operation.
628 LeaseIdMismatchWithLeaseOperation,
629
630 /// Lease ID missing.
631 LeaseIdMissing,
632
633 /// Lease is breaking and cannot be acquired.
634 LeaseIsBreakingAndCannotBeAcquired,
635
636 /// Lease is breaking and cannot be changed.
637 LeaseIsBreakingAndCannotBeChanged,
638
639 /// Lease is broken and cannot be renewed.
640 LeaseIsBrokenAndCannotBeRenewed,
641
642 /// Lease lost.
643 LeaseLost,
644
645 /// Lease not present with blob operation.
646 LeaseNotPresentWithBlobOperation,
647
648 /// Lease not present with container operation.
649 LeaseNotPresentWithContainerOperation,
650
651 /// Lease not present with lease operation.
652 LeaseNotPresentWithLeaseOperation,
653
654 /// Maximum blob size condition not met.
655 MaxBlobSizeConditionNotMet,
656
657 /// MD5 mismatch.
658 Md5Mismatch,
659
660 /// Metadata too large.
661 MetadataTooLarge,
662
663 /// Missing content length header.
664 MissingContentLengthHeader,
665
666 /// Missing required header.
667 MissingRequiredHeader,
668
669 /// Missing required query parameter.
670 MissingRequiredQueryParameter,
671
672 /// Missing required XML node.
673 MissingRequiredXmlNode,
674
675 /// Multiple condition headers not supported.
676 MultipleConditionHeadersNotSupported,
677
678 /// No authentication information.
679 NoAuthenticationInformation,
680
681 /// No pending copy operation.
682 NoPendingCopyOperation,
683
684 /// Operation not allowed on incremental copy blob.
685 OperationNotAllowedOnIncrementalCopyBlob,
686
687 /// Operation timed out.
688 OperationTimedOut,
689
690 /// Out of range input.
691 OutOfRangeInput,
692
693 /// Out of range query parameter value.
694 OutOfRangeQueryParameterValue,
695
696 /// Pending copy operation.
697 PendingCopyOperation,
698
699 /// Previous snapshot cannot be newer.
700 PreviousSnapshotCannotBeNewer,
701
702 /// Previous snapshot not found.
703 PreviousSnapshotNotFound,
704
705 /// Previous snapshot operation not supported.
706 PreviousSnapshotOperationNotSupported,
707
708 /// Request body too large.
709 RequestBodyTooLarge,
710
711 /// Request URL failed to parse.
712 RequestUrlFailedToParse,
713
714 /// Resource already exists.
715 ResourceAlreadyExists,
716
717 /// Resource not found.
718 ResourceNotFound,
719
720 /// Resource type mismatch.
721 ResourceTypeMismatch,
722
723 /// Sequence number condition not met.
724 SequenceNumberConditionNotMet,
725
726 /// Sequence number increment too large.
727 SequenceNumberIncrementTooLarge,
728
729 /// Server busy.
730 ServerBusy,
731
732 /// Snapshot count exceeded.
733 SnapshotCountExceeded,
734
735 /// Snapshot operation rate exceeded.
736 SnapshotOperationRateExceeded,
737
738 /// Snapshots present.
739 SnapshotsPresent,
740
741 /// Source condition not met.
742 SourceConditionNotMet,
743
744 /// System in use.
745 SystemInUse,
746
747 /// Target condition not met.
748 TargetConditionNotMet,
749
750 /// Unauthorized blob overwrite.
751 UnauthorizedBlobOverwrite,
752
753 /// Unsupported header.
754 UnsupportedHeader,
755
756 /// Unsupported HTTP verb.
757 UnsupportedHttpVerb,
758
759 /// Unsupported query parameter.
760 UnsupportedQueryParameter,
761
762 /// Unsupported XML node.
763 UnsupportedXmlNode,
764
765 /// Any other value not defined in `StorageErrorCode`.
766 UnknownValue(String),
767}