/******************************************************************************* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * Licensed under the Apache License, Version 2.0 (the "License"). You may not use * this file except in compliance with the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the * specific language governing permissions and limitations under the License. * ***************************************************************************** * __ _ _ ___ * ( )( \/\/ )/ __) * /__\ \ / \__ \ * (_)(_) \/\/ (___/ * * AWS SDK for .NET * API Version: 2006-03-01 * */ using System; using System.Collections.Generic; using System.Reflection; using Amazon.Runtime; using Amazon.Util; namespace Amazon.S3 { /// /// The file format used when exporting data to Amazon S3. /// public sealed class AnalyticsS3ExportFileFormat : ConstantClass { /// /// CSV file format. /// public static readonly AnalyticsS3ExportFileFormat CSV = new AnalyticsS3ExportFileFormat("CSV"); /// /// Construct instance of AnalyticsS3ExportFileFormat. /// /// public AnalyticsS3ExportFileFormat(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static AnalyticsS3ExportFileFormat FindValue(string value) { return FindValue(value); } /// /// Converts the string to an AnalyticsS3ExportFileFormat. /// /// /// public static implicit operator AnalyticsS3ExportFileFormat(string value) { return FindValue(value); } } /// /// Represents the accelerate status for a bucket. /// public sealed class BucketAccelerateStatus : ConstantClass { /// /// Bucket acceleration is enabled. /// public static readonly BucketAccelerateStatus Enabled = new BucketAccelerateStatus("Enabled"); /// /// Bucket acceleration is suspended. /// public static readonly BucketAccelerateStatus Suspended = new BucketAccelerateStatus("Suspended"); /// /// Construct instance of BucketAccelerateStatus. It is not intended for this constructor to be called. Instead users should call the FindValue. /// /// public BucketAccelerateStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static BucketAccelerateStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to an BucketAccelerateStatus /// /// /// public static implicit operator BucketAccelerateStatus(string value) { return FindValue(value); } } /// /// The status of the delete marker replication. /// public sealed class DeleteMarkerReplicationStatus : ConstantClass { /// /// Delete marker replication is enabled. /// public static readonly DeleteMarkerReplicationStatus Enabled = new DeleteMarkerReplicationStatus("Enabled"); /// /// Delete marker replication is disabled. /// public static readonly DeleteMarkerReplicationStatus Disabled = new DeleteMarkerReplicationStatus("Disabled"); /// /// Construct instance of DeleteMarkerReplicationStatus. It is not intended for this constructor to be called. Instead users should call the FindValue. /// /// public DeleteMarkerReplicationStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static DeleteMarkerReplicationStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to a DeleteMarkerReplicationStatus /// /// /// public static implicit operator DeleteMarkerReplicationStatus(string value) { return FindValue(value); } } /// /// A list of all possible CannedACLs that can be used /// for S3 Buckets or S3 Objects. For more information about CannedACLs, refer to /// . /// public sealed class S3CannedACL : ConstantClass { /// /// Owner gets FULL_CONTROL. /// No one else has access rights (default). /// public static readonly S3CannedACL NoACL = new S3CannedACL("NoACL"); /// /// Owner gets FULL_CONTROL. /// No one else has access rights (default). /// public static readonly S3CannedACL Private = new S3CannedACL("private"); /// /// Owner gets FULL_CONTROL and the anonymous principal is granted READ access. /// If this policy is used on an object, it can be read from a browser with no authentication. /// public static readonly S3CannedACL PublicRead = new S3CannedACL("public-read"); /// /// Owner gets FULL_CONTROL, the anonymous principal is granted READ and WRITE access. /// This can be a useful policy to apply to a bucket, but is generally not recommended. /// public static readonly S3CannedACL PublicReadWrite = new S3CannedACL("public-read-write"); /// /// Owner gets FULL_CONTROL, and any principal authenticated as a registered Amazon /// S3 user is granted READ access. /// public static readonly S3CannedACL AuthenticatedRead = new S3CannedACL("authenticated-read"); /// /// Owner gets FULL_CONTROL. Amazon EC2 gets READ access to GET an /// Amazon Machine Image (AMI) bundle from Amazon S3. /// public static readonly S3CannedACL AWSExecRead = new S3CannedACL("aws-exec-read"); /// /// Object Owner gets FULL_CONTROL, Bucket Owner gets READ /// This ACL applies only to objects and is equivalent to private when used with PUT Bucket. /// You use this ACL to let someone other than the bucket owner write content (get full control) /// in the bucket but still grant the bucket owner read access to the objects. /// public static readonly S3CannedACL BucketOwnerRead = new S3CannedACL("bucket-owner-read"); /// /// Object Owner gets FULL_CONTROL, Bucket Owner gets FULL_CONTROL. /// This ACL applies only to objects and is equivalent to private when used with PUT Bucket. /// You use this ACL to let someone other than the bucket owner write content (get full control) /// in the bucket but still grant the bucket owner full rights over the objects. /// public static readonly S3CannedACL BucketOwnerFullControl = new S3CannedACL("bucket-owner-full-control"); /// /// The LogDelivery group gets WRITE and READ_ACP permissions on the bucket. /// public static readonly S3CannedACL LogDeliveryWrite = new S3CannedACL("log-delivery-write"); /// /// Construct instance of S3CannedACL. It is not intended for this constructor to be called. Instead users should call the FindValue. /// /// public S3CannedACL(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static S3CannedACL FindValue(string value) { return FindValue(value); } /// /// Converts the string to an S3CannedACL /// /// /// public static implicit operator S3CannedACL(string value) { return FindValue(value); } } /// /// A list of all possible S3 Bucket region possibilities. For /// more information, refer to /// . /// public sealed partial class S3Region : ConstantClass { /// /// Specifies that the S3 Bucket should use US locality. /// This is the default value. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USEast1 constant")] public static readonly S3Region US = new S3Region(""); /// /// Specifies that the S3 Bucket should use EU locality which defaults to EU-WEST-1 /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUWest1 constant")] public static readonly S3Region EU = new S3Region("EU"); /// /// Specifies that the S3 Bucket should use US-EAST-2 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USEast2 constant")] public static readonly S3Region USE2 = new S3Region("us-east-2"); /// /// Specifies that the S3 Bucket should use the EU-NORTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUNorth1 constant")] public static readonly S3Region EUN1 = new S3Region("eu-north-1"); /// /// Specifies that the S3 Bucket should use the EU-WEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUWest1 constant")] public static readonly S3Region EUW1 = new S3Region("eu-west-1"); /// /// Specifies that the S3 Bucket should use the EU-WEST-2 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUWest2 constant")] public static readonly S3Region EUW2 = new S3Region("eu-west-2"); /// /// Specifies that the S3 Bucket should use the EU-WEST-3 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUWest3 constant")] public static readonly S3Region EUW3 = new S3Region("eu-west-3"); /// /// Specifies that the S3 Bucket should use the EU-CENTRAL-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUCentral1 constant")] public static readonly S3Region EUC1 = new S3Region("eu-central-1"); /// /// Specifies that the S3 Bucket should use the EU-SOUTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the EUSouth1 constant")] public static readonly S3Region EUS1 = new S3Region("eu-south-1"); /// /// Specifies that the S3 Bucket should use US-WEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USWest1 constant")] public static readonly S3Region USW1 = new S3Region("us-west-1"); /// /// Specifies that the S3 Bucket should use US-WEST-2 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USWest2 constant")] public static readonly S3Region USW2 = new S3Region("us-west-2"); /// /// Specifies that the S3 Bucket should use US-GOV-EAST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USGovCloudEast1 constant")] public static readonly S3Region GOVE1 = new S3Region("us-gov-east-1"); /// /// Specifies that the S3 Bucket should use US-GOV-WEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USGovCloudWest1 constant")] public static readonly S3Region GOVW1 = new S3Region("us-gov-west-1"); /// /// Specifies that the S3 Bucket should use the AP-EAST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APEast1 constant")] public static readonly S3Region APE1 = new S3Region("ap-east-1"); /// /// Specifies that the S3 Bucket should use the AP-SOUTHEAST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APSoutheast1 constant")] public static readonly S3Region APS1 = new S3Region("ap-southeast-1"); /// /// Specifies that the S3 Bucket should use the AP-SOUTHEAST-2 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APSoutheast2 constant")] public static readonly S3Region APS2 = new S3Region("ap-southeast-2"); /// /// Specifies that the S3 Bucket should use the AP-NORTHEAST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APNortheast1 constant")] public static readonly S3Region APN1 = new S3Region("ap-northeast-1"); /// /// Specifies that the S3 Bucket should use the AP-NORTHEAST-2 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APNortheast2 constant")] public static readonly S3Region APN2 = new S3Region("ap-northeast-2"); /// /// Specifies that the S3 Bucket should use the AP-NORTHEAST-3 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APNortheast3 constant")] public static readonly S3Region APN3 = new S3Region("ap-northeast-3"); /// /// Specifies that the S3 Bucket should use the AP-SOUTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the APSouth1 constant")] public static readonly S3Region APS3 = new S3Region("ap-south-1"); /// /// Specifies that the S3 Bucket should use the SA-EAST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the SAEast1 constant")] public static readonly S3Region SAE1 = new S3Region("sa-east-1"); /// /// Specifies that the S3 Bucket should use CN-NORTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the CNNorth1 constant")] public static readonly S3Region CN1 = new S3Region("cn-north-1"); /// /// Specifies that the S3 Bucket should use CN-NORTHWEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the CNNorthWest1 constant")] public static readonly S3Region CNW1 = new S3Region("cn-northwest-1"); /// /// Specifies that the S3 Bucket should use CA-CENTRAL-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the CACentral1 constant")] public static readonly S3Region CAN1 = new S3Region("ca-central-1"); /// /// Specifies that the S3 Bucket should use ME-SOUTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the MESouth1 constant")] public static readonly S3Region MES1 = new S3Region("me-south-1"); /// /// Specifies that the S3 Bucket should use AF-SOUTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the AFSouth1 constant")] public static readonly S3Region AFS1 = new S3Region("af-south-1"); /// /// Specifies that the S3 Bucket should use US-WEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USWest1 constant")] public static readonly S3Region SFO = new S3Region("us-west-1"); /// /// Specifies that the S3 Bucket should use CN-NORTH-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the CNNorth1 constant")] public static readonly S3Region CN = new S3Region("cn-north-1"); /// /// Specifies that the S3 Bucket should use US-GOV-WEST-1 locality. /// [Obsolete("This constant is obsolete. Usage of this property should be migrated to the USGovCloudWest1 constant")] public static readonly S3Region GOV = new S3Region("us-gov-west-1"); /// /// Construct instance of S3Region. It is not intended for this constructor to be called. Instead users should call the FindValue. /// /// public S3Region(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static S3Region FindValue(string value) { if (value == null) return S3Region.US; return FindValue(value); } /// /// Converts the string to the S3Region class /// /// /// public static implicit operator S3Region(string value) { return FindValue(value); } } /// /// A list of all ACL permissions. For more information, refer to /// . /// public sealed class S3Permission : ConstantClass { /// /// When applied to a bucket, grants permission to list the bucket. /// When applied to an object, this grants permission to read the /// object data and/or metadata. /// public static readonly S3Permission READ = new S3Permission("READ", "x-amz-grant-read"); /// /// When applied to a bucket, grants permission to create, overwrite, /// and delete any object in the bucket. This permission is not /// supported for objects. /// public static readonly S3Permission WRITE = new S3Permission("WRITE", "x-amz-grant-write"); /// /// Grants permission to read the ACL for the applicable bucket or object. /// The owner of a bucket or object always has this permission implicitly. /// public static readonly S3Permission READ_ACP = new S3Permission("READ_ACP", "x-amz-grant-read-acp"); /// /// Gives permission to overwrite the ACP for the applicable bucket or object. /// The owner of a bucket or object always has this permission implicitly. /// Granting this permission is equivalent to granting FULL_CONTROL because /// the grant recipient can make any changes to the ACP. /// public static readonly S3Permission WRITE_ACP = new S3Permission("WRITE_ACP", "x-amz-grant-write-acp"); /// /// Provides READ, WRITE, READ_ACP, and WRITE_ACP permissions. /// It does not convey additional rights and is provided only for convenience. /// public static readonly S3Permission FULL_CONTROL = new S3Permission("FULL_CONTROL", "x-amz-grant-full-control"); /// /// Gives permission to restore an object that is currently stored in Amazon Glacier /// for archival storage. /// public static readonly S3Permission RESTORE_OBJECT = new S3Permission("RESTORE", "x-amz-grant-restore-object"); /// /// Construct S3Permission. /// /// public S3Permission(string value) : this(value, null) { } /// /// Construct instance of S3Permission. It is not intended for this constructor to be called. Instead users should call the FindValue. /// /// /// public S3Permission(string value, string headerName) : base(value) { this.HeaderName = headerName; } /// /// Gets and sets the HeaderName property. /// public string HeaderName { get; private set; } /// /// Finds the constant for the unique value. /// /// /// public static S3Permission FindValue(string value) { return FindValue(value); } /// /// Converts the string to an S3Permission /// /// /// public static implicit operator S3Permission(string value) { return FindValue(value); } } /// /// An enumeration of all Metadata directives that /// can be used for the CopyObject operation. /// public enum S3MetadataDirective { /// /// Specifies that the metadata is copied from the source object. /// COPY, /// /// Specifies that the metadata is replaced with metadata provided in the request. /// All original metadata is replaced by the metadata you specify. /// REPLACE } /// /// An enumeration of all protocols that the pre-signed /// URL can be created against. /// public enum Protocol { /// /// https protocol will be used in the pre-signed URL. /// HTTPS, /// /// http protocol will be used in the pre-signed URL. /// HTTP } /// /// An enumeration of supported HTTP verbs /// public enum HttpVerb { /// /// The GET HTTP verb. /// GET, /// /// The HEAD HTTP verb. /// HEAD, /// /// The PUT HTTP verb. /// PUT, /// /// The DELETE HTTP verb. /// DELETE } /// /// S3 Storage Class Definitions /// public sealed class S3StorageClass : ConstantClass { /// /// S3 Glacier Deep Archive provides secure, durable object storage class for long term data archival. /// It is the ideal storage class to make an archival, durable copy of data that rarely, if ever, needs to be accessed. /// It can be used as an offline backup for their most important data assets and to meet long-term retention needs. /// public static readonly S3StorageClass DeepArchive = new S3StorageClass("DEEP_ARCHIVE"); /// /// The GLACIER storage is for object that are stored in Amazon Glacier. /// This storage class is for objects that are for archival purpose and /// get operations are rare. /// /// Durability 99.999999999% /// public static readonly S3StorageClass Glacier = new S3StorageClass("GLACIER"); /// /// Constant GLACIER_IR for ObjectStorageClass /// public static readonly S3StorageClass GlacierInstantRetrieval= new S3StorageClass("GLACIER_IR"); /// /// IntelligentTiering makes it easy to lower your overall cost of storage by automatically placing data in the storage /// class that best matches the access patterns for the storage. With IntelligentTiering, you don’t need to define /// and manage individual policies for lifecycle data management or write code to transition objects /// between storage classes. Instead, you can use IntelligentTiering to manage transitions between Standard and /// S-IA without writing any application code. IntelligentTiering also manages transitions automatically to /// Glacier for long term archive in addition to S3 storage classes. /// public static readonly S3StorageClass IntelligentTiering = new S3StorageClass("INTELLIGENT_TIERING"); /// /// The ONEZONE_IA storage is for infrequently accessed objects. It is similiar to STANDARD_IA, but /// only stores object data within one Availablity Zone in a given region. /// /// Durability 99.999999999%; Availability 99% over a given year. /// public static readonly S3StorageClass OneZoneInfrequentAccess = new S3StorageClass("ONEZONE_IA"); /// /// The OUTPOSTS storage class for objects stored in a S3 Outpost /// public static readonly S3StorageClass Outposts = new S3StorageClass("OUTPOSTS"); /// /// REDUCED_REDUNDANCY provides the same availability as standard, but at a lower durability. /// /// Durability 99.99%; Availability 99.99% over a given year. /// public static readonly S3StorageClass ReducedRedundancy = new S3StorageClass("REDUCED_REDUNDANCY"); /// /// The STANDARD storage class, which is the default /// storage class for S3. /// /// Durability 99.999999999%; Availability 99.99% over a given year. /// public static readonly S3StorageClass Standard = new S3StorageClass("STANDARD"); /// /// The STANDARD_IA storage is for infrequently accessed objects. /// This storage class is for objects that are long-lived and less frequently accessed, /// like backups and older data. /// /// Durability 99.999999999%; Availability 99.9% over a given year. /// public static readonly S3StorageClass StandardInfrequentAccess = new S3StorageClass("STANDARD_IA"); /// /// The SNOW storage is for objects stored in Amazon S3 compatible object storage /// for Snow family devices. /// public static readonly S3StorageClass Snow = new S3StorageClass("SNOW"); /// /// Construct an instance of S3StorageClass. /// /// public S3StorageClass(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static S3StorageClass FindValue(string value) { return FindValue(value); } /// /// Convert string to S3StorageClass. /// /// /// public static implicit operator S3StorageClass(string value) { return FindValue(value); } } /// /// The constants for the known event names used by S3 notification. S3 might add new /// events before the SDK is updated. In which case the names listed in the S3 documentation /// will work as well as these constants. /// public sealed class NotificationEvents { /// /// An event that says an object has been lost in the reduced redundancy storage. /// public static readonly string ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"; private NotificationEvents() { } } /// /// A list of all server-side encryption methods for customer provided encryption keys. /// public sealed class ServerSideEncryptionCustomerMethod : ConstantClass { /// /// No server side encryption to be used. /// public static readonly ServerSideEncryptionCustomerMethod None = new ServerSideEncryptionCustomerMethod(""); /// /// Use AES 256 server side encryption. /// public static readonly ServerSideEncryptionCustomerMethod AES256 = new ServerSideEncryptionCustomerMethod("AES256"); /// /// Constructs an instance of ServerSideEncryptionCustomerMethod. /// /// public ServerSideEncryptionCustomerMethod(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static ServerSideEncryptionCustomerMethod FindValue(string value) { return FindValue(value); } /// /// Converts string to ServerSideEncryptionCustomerMethod. /// /// /// public static implicit operator ServerSideEncryptionCustomerMethod(string value) { return FindValue(value); } } /// /// A list of all server-side encryption methods. /// public sealed class ServerSideEncryptionMethod : ConstantClass { /// /// No server side encryption to be used. /// public static readonly ServerSideEncryptionMethod None = new ServerSideEncryptionMethod(""); /// /// Use AES 256 server side encryption. /// public static readonly ServerSideEncryptionMethod AES256 = new ServerSideEncryptionMethod("AES256"); /// /// Use AWS Key Management Service for server side encryption. /// public static readonly ServerSideEncryptionMethod AWSKMS = new ServerSideEncryptionMethod("aws:kms"); /// /// Use AWS Key Management Service for server side double encryption /// public static readonly ServerSideEncryptionMethod AWSKMSDSSE = new ServerSideEncryptionMethod("aws:kms:dsse"); /// /// Construct instance of ServerSideEncryptionMethod. /// /// public ServerSideEncryptionMethod(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static ServerSideEncryptionMethod FindValue(string value) { return FindValue(value); } /// /// Convert string to ServerSideEncryptionCustomerMethod. /// /// /// public static implicit operator ServerSideEncryptionMethod(string value) { return FindValue(value); } } /// /// A list of all grantee types. /// public sealed class GranteeType : ConstantClass { /// /// The predefined group. /// public static readonly GranteeType Group = new GranteeType("Group"); /// /// The email address of an AWS account /// public static readonly GranteeType Email = new GranteeType("AmazonCustomerByEmail"); /// /// The canonical user ID of an AWS account /// public static readonly GranteeType CanonicalUser = new GranteeType("CanonicalUser"); /// /// Construct an instance of GranteeType. /// /// public GranteeType(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static GranteeType FindValue(string value) { return FindValue(value); } /// /// Convert a string to GranteeType. /// /// /// public static implicit operator GranteeType(string value) { return FindValue(value); } } /// /// A list of all lifecycle statuses. /// public sealed class LifecycleRuleStatus : ConstantClass { /// /// The rule is enabled. /// public static readonly LifecycleRuleStatus Enabled = new LifecycleRuleStatus("Enabled"); /// /// The rule is disabled. /// public static readonly LifecycleRuleStatus Disabled = new LifecycleRuleStatus("Disabled"); /// /// Constructs an instance LifecycleRuleStatus. /// /// public LifecycleRuleStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static LifecycleRuleStatus FindValue(string value) { return FindValue(value); } /// /// Convert string to LifecycleRuleStatus. /// /// /// public static implicit operator LifecycleRuleStatus(string value) { return FindValue(value); } } /// /// A list of all version statuses. /// public sealed class VersionStatus : ConstantClass { /// /// The rule is off. /// public static readonly VersionStatus Off = new VersionStatus("Off"); /// /// The rule is suspended. /// public static readonly VersionStatus Suspended = new VersionStatus("Suspended"); /// /// The rule is enabled. /// public static readonly VersionStatus Enabled = new VersionStatus("Enabled"); /// /// Construct an instance of VersionStatus. /// /// public VersionStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static VersionStatus FindValue(string value) { return FindValue(value); } /// /// Convert string to VersionStatus. /// /// /// public static implicit operator VersionStatus(string value) { return FindValue(value); } } /// /// A list of all encoding types. /// public sealed class EncodingType : ConstantClass { /// /// Url encoding. /// public static readonly EncodingType Url = new EncodingType("Url"); /// /// Constructs intance of EncodingType /// /// public EncodingType(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static EncodingType FindValue(string value) { return FindValue(value); } /// /// Converts string to EncodingType /// /// /// public static implicit operator EncodingType(string value) { return FindValue(value); } } /// /// The bucket event for which to send notifications. /// public sealed class EventType : ConstantClass { /// /// The event encapsulates all the object create events /// public static readonly EventType ObjectCreatedAll = new EventType("s3:ObjectCreated:*"); /// /// Event for put operations /// public static readonly EventType ObjectCreatedPut = new EventType("s3:ObjectCreated:Put"); /// /// Event for post operations /// public static readonly EventType ObjectCreatedPost = new EventType("s3:ObjectCreated:Post"); /// /// Event for copy operations /// public static readonly EventType ObjectCreatedCopy = new EventType("s3:ObjectCreated:Copy"); /// /// Event for completing a multi part upload /// public static readonly EventType ObjectCreatedCompleteMultipartUpload = new EventType("s3:ObjectCreated:CompleteMultipartUpload"); /// /// This event encapsulates all the object removed events /// public static readonly EventType ObjectRemovedAll = new EventType("s3:ObjectRemoved:*"); /// /// Event for object removed, delete operation. /// public static readonly EventType ObjectRemovedDelete = new EventType("s3:ObjectRemoved:Delete"); /// /// Event for object removed, delete marker created operation. /// public static readonly EventType ObjectRemovedDeleteMarkerCreated = new EventType("s3:ObjectRemoved:DeleteMarkerCreated"); /// /// Event for objects stored in reduced redundancy and S3 detects the object is lost /// public static readonly EventType ReducedRedundancyLostObject = new EventType("s3:ReducedRedundancyLostObject"); /// /// Event for all object restore /// public static readonly EventType ObjectRestoreAll = new EventType("s3:ObjectRestore:*"); /// /// Event for restore post operations. /// public static readonly EventType ObjectRestorePost = new EventType("s3:ObjectRestore:Post"); /// /// Event for when object restore is completed. /// public static readonly EventType ObjectRestoreCompleted = new EventType("s3:ObjectRestore:Completed"); /// /// Event for replication of all /// public static readonly EventType ReplicationAll = new EventType("s3:Replication:*"); /// /// Event for operation failed replication /// public static readonly EventType ReplicationOperationFailedReplication = new EventType("s3:Replication:OperationFailedReplication"); /// /// Evemt for replication operation not tracked /// public static readonly EventType ReplicationOperationNotTracked = new EventType("s3:Replication:OperationNotTracked"); /// /// Event for replication operation missed threshold /// public static readonly EventType ReplicationOperationMissedThreshold = new EventType("s3:Replication:OperationMissedThreshold"); /// /// Event for operation replicated after threshold /// public static readonly EventType ReplicationOperationReplicatedAfterThreshold = new EventType("s3:Replication:OperationReplicatedAfterThreshold"); /// /// Event for Intelligent Tiering /// public static readonly EventType S3IntelligentTiering = new EventType("s3:IntelligentTiering"); /// /// Event for all Lifecycle Expiration events /// public static readonly EventType S3LifecycleExpirationAll = new EventType("s3:LifecycleExpiration:*"); /// /// Event for Lifecycle Expiration deletion /// public static readonly EventType S3LifecycleExpirationDelete = new EventType("s3:LifecycleExpiration:Delete"); /// /// Event for Lifecycle Expiration Delete Marker creation /// public static readonly EventType S3LifecycleExpirationDeleteMarkerCreated = new EventType("s3:LifecycleExpiration:DeleteMarkerCreated"); /// /// Event for Lifecycle Transition /// public static readonly EventType S3LifecycleTransition = new EventType("s3:LifecycleTransition"); /// /// Event for Object Acl puts /// public static readonly EventType S3ObjectAclPut = new EventType("s3:ObjectAcl:Put"); /// /// Event for Object Restore deletes /// public static readonly EventType S3ObjectRestoreDelete = new EventType("s3:ObjectRestore:Delete"); /// /// Event for all Object Tagging events /// public static readonly EventType S3ObjectTaggingAll = new EventType("s3:ObjectTagging:*"); /// /// Event for Object Tagging deletes /// public static readonly EventType S3ObjectTaggingDelete = new EventType("s3:ObjectTagging:Delete"); /// /// Event for Object Tagging puts /// public static readonly EventType S3ObjectTaggingPut = new EventType("s3:ObjectTagging:Put"); /// /// Constructs instance of EventType. /// /// public EventType(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// /// public static EventType FindValue(string value) { return FindValue(value); } /// /// Convert string to EventType. /// /// /// public static implicit operator EventType(string value) { return FindValue(value); } /// /// Compares if the ConstantClass instances are equals. /// /// /// public override bool Equals(ConstantClass obj) { if(obj == null) { return false; } return this.Equals(obj.Value); } /// /// Compares if the ConstantClass instances are equals. This is ovewritten to handle the /// discrepancy with S3 events coming from Lambda that don't have the prefix "s3:". /// /// /// protected override bool Equals(string value) { if (value == null) { return false; } var thisValue = this.Value; if (!thisValue.StartsWith("s3:", StringComparison.OrdinalIgnoreCase)) thisValue = "s3:" + thisValue; if (!value.StartsWith("s3:", StringComparison.OrdinalIgnoreCase)) value = "s3:" + value; return StringComparer.OrdinalIgnoreCase.Equals(thisValue, value); } } /// /// A list of all Inventory Formats. /// public sealed class InventoryFormat : ConstantClass { /// /// CSV inventory format /// public static readonly InventoryFormat CSV = new InventoryFormat("CSV"); /// /// ORC inventory format /// public static readonly InventoryFormat ORC = new InventoryFormat("ORC"); /// /// Parquet inventory format /// public static readonly InventoryFormat Parquet = new InventoryFormat("Parquet"); /// /// Construct instance of InventoryFormat. /// /// public InventoryFormat(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the InventoryFormat. /// The InventoryFormat object for that string. public static InventoryFormat FindValue(string value) { return FindValue(value); } /// /// Convert string to InventoryFormat. /// /// /// public static implicit operator InventoryFormat(string value) { return FindValue(value); } } /// /// A list of inventory included object versions. /// public sealed class InventoryIncludedObjectVersions : ConstantClass { /// /// All Inventory Included Object Versions /// public static readonly InventoryIncludedObjectVersions All = new InventoryIncludedObjectVersions("All"); /// /// Current Inventory Included Object Versions /// public static readonly InventoryIncludedObjectVersions Current = new InventoryIncludedObjectVersions("Current"); /// /// Construct instance of InventoryIncludedObjectVersions. /// /// public InventoryIncludedObjectVersions(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the InventoryIncludedObjectVersions. /// The InventoryIncludedObjectVersions object for that string. public static InventoryIncludedObjectVersions FindValue(string value) { return FindValue(value); } /// /// Convert string to InventoryIncludedObjectVersions. /// /// /// public static implicit operator InventoryIncludedObjectVersions(string value) { return FindValue(value); } } /// /// A list of inventory frequencies. /// public sealed class InventoryFrequency : ConstantClass { /// /// Daily Inventory Frequency /// public static readonly InventoryFrequency Daily = new InventoryFrequency("Daily"); /// /// Weekly Inventory Frequency /// public static readonly InventoryFrequency Weekly = new InventoryFrequency("Weekly"); /// /// Construct instance of InventoryFrequency. /// /// public InventoryFrequency(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the InventoryFrequency. /// The InventoryFrequency object for that string. public static InventoryFrequency FindValue(string value) { return FindValue(value); } /// /// Convert string to InventoryFrequency. /// /// /// public static implicit operator InventoryFrequency(string value) { return FindValue(value); } } /// /// A list of inventory optional fields. /// public sealed class InventoryOptionalField : ConstantClass { /// /// InventoryOptionalField for Size /// public static readonly InventoryOptionalField Size = new InventoryOptionalField("Size"); /// /// InventoryOptionalField for LastModifiedDate /// public static readonly InventoryOptionalField LastModifiedDate = new InventoryOptionalField("LastModifiedDate"); /// /// InventoryOptionalField for StorageClass /// public static readonly InventoryOptionalField StorageClass = new InventoryOptionalField("StorageClass"); /// /// InventoryOptionalField for ETag /// public static readonly InventoryOptionalField ETag = new InventoryOptionalField("ETag"); /// /// InventoryOptionalField for IsMultipartUploaded /// public static readonly InventoryOptionalField IsMultipartUploaded = new InventoryOptionalField("IsMultipartUploaded"); /// /// InventoryOptionalField for ReplicationStatus /// public static readonly InventoryOptionalField ReplicationStatus = new InventoryOptionalField("ReplicationStatus"); /// /// InventoryOptionalField for EncryptionStatus /// public static readonly InventoryOptionalField EncryptionStatus = new InventoryOptionalField("EncryptionStatus"); /// /// InventoryOptionalField for ObjectLockRetainUntilDate /// public static readonly InventoryOptionalField ObjectLockRetainUntilDate = new InventoryOptionalField("ObjectLockRetainUntilDate"); /// /// InventoryOptionalField for ObjectLockMode /// public static readonly InventoryOptionalField ObjectLockMode = new InventoryOptionalField("ObjectLockMode"); /// /// InventoryOptionalField for ObjectLockLegalHoldStatus /// public static readonly InventoryOptionalField ObjectLockLegalHoldStatus = new InventoryOptionalField("ObjectLockLegalHoldStatus"); /// /// InventoryOptionalField for IntelligentTieringAccessTier /// public static readonly InventoryOptionalField IntelligentTieringAccessTier = new InventoryOptionalField("IntelligentTieringAccessTier"); /// /// Constant BucketKeyStatus for InventoryOptionalField /// public static readonly InventoryOptionalField BucketKeyStatus = new InventoryOptionalField("BucketKeyStatus"); /// /// Constant ChecksumAlgorithm for InventoryOptionalField /// public static readonly InventoryOptionalField ChecksumAlgorithm = new InventoryOptionalField("ChecksumAlgorithm"); /// /// Constant ObjectAccessControlList for InventoryOptionalField /// public static readonly InventoryOptionalField ObjectAccessControlList = new InventoryOptionalField("ObjectAccessControlList"); /// /// Constant ObjectOwner for InventoryOptionalField /// public static readonly InventoryOptionalField ObjectOwner = new InventoryOptionalField("ObjectOwner"); /// /// Construct instance of InventoryOptionalField. /// /// public InventoryOptionalField(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the InventoryOptionalField. /// The InventoryIncludedObjectVersions object for that string. public static InventoryOptionalField FindValue(string value) { return FindValue(value); } /// /// Convert string to InventoryOptionalField. /// /// /// public static implicit operator InventoryOptionalField(string value) { return FindValue(value); } } /// /// The status of the replication job associated with this source object. /// public sealed class ReplicationStatus : ConstantClass { /// /// The object is pending replication. /// public static readonly ReplicationStatus Pending = new ReplicationStatus("PENDING"); /// /// The object has been replicated. /// public static readonly ReplicationStatus Completed = new ReplicationStatus("COMPLETED"); /// /// The object was created as a result of replication. /// public static readonly ReplicationStatus Replica = new ReplicationStatus("REPLICA"); /// /// The object replication has failed due to a customer-attributable reason, and the replication will not be attempted again. /// public static readonly ReplicationStatus Failed = new ReplicationStatus("FAILED"); /// /// Construct instance of ReplicationStatus. /// /// public ReplicationStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the ReplicationStatus. /// The ReplicationStatus object for that string. public static ReplicationStatus FindValue(string value) { return FindValue(value); } /// /// Convert string to ReplicationStatus. /// /// /// public static implicit operator ReplicationStatus(string value) { return FindValue(value); } } /// /// Whether a replication rule is applied or ignored. /// public sealed class ReplicationRuleStatus : ConstantClass { /// /// The rule will be applied. /// public static readonly ReplicationRuleStatus Enabled = new ReplicationRuleStatus("Enabled"); /// /// The rule will be ignored. /// public static readonly ReplicationRuleStatus Disabled = new ReplicationRuleStatus("Disabled"); /// /// Construct instance of ReplicationRuleStatus /// /// public ReplicationRuleStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the ReplicationRuleStatus. /// The ReplicationRuleStatus object for that string. public static ReplicationRuleStatus FindValue(string value) { return FindValue(value); } /// /// Convert string to ReplicationRuleStatus. /// /// /// public static implicit operator ReplicationRuleStatus(string value) { return FindValue(value); } } /// /// Specifies whether the object tag-set are copied from the source object or replaced with tag-set provided in the request. /// internal sealed class TaggingDirective : ConstantClass { /// /// The object tag-set is copied from the source object. /// public static readonly TaggingDirective COPY = new TaggingDirective("COPY"); /// /// The object tag-set is replaced with tag-set provided in the request. /// public static readonly TaggingDirective REPLACE = new TaggingDirective("REPLACE"); /// /// Construct instance of TaggingDirective /// public TaggingDirective(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the TaggingDirective. /// The TaggingDirective object for that string. public static TaggingDirective FindValue(string value) { return FindValue(value); } /// /// Convert string to TaggingDirective. /// public static implicit operator TaggingDirective(string value) { return FindValue(value); } } /// /// All enumerations type for retrieval tier for Glacier restore. /// public sealed class GlacierJobTier : ConstantClass { /// /// Standard Tier for Glacier restore. /// public static readonly GlacierJobTier Standard = new GlacierJobTier("Standard"); /// /// Bulk Tier for Glacier restore. /// public static readonly GlacierJobTier Bulk = new GlacierJobTier("Bulk"); /// /// Expedited Tier for Glacier restore. /// public static readonly GlacierJobTier Expedited = new GlacierJobTier("Expedited"); /// /// Construct instance of RestoreObjectRequestGlacierJobTier /// /// private GlacierJobTier(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the RestoreObjectRequestGlacierJobTier. /// The RestoreObjectRequestGlacierJobTier object for that string. public static GlacierJobTier FindValue(string value) { return FindValue(value); } /// /// Convert string to RestoreObjectRequestGlacierJobTier. /// /// /// public static implicit operator GlacierJobTier(string value) { return FindValue(value); } } /// /// The version of the output schema to use when exporting data. /// public sealed class StorageClassAnalysisSchemaVersion : ConstantClass { /// /// The schema output version V_1. /// public static readonly StorageClassAnalysisSchemaVersion V_1 = new StorageClassAnalysisSchemaVersion("V_1"); /// /// Construct instance of StorageClassAnalysisSchemaVersion /// /// public StorageClassAnalysisSchemaVersion(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the StorageClassAnalysisSchemaVersion. /// The StorageClassAnalysisSchemaVersion object for that string. public static StorageClassAnalysisSchemaVersion FindValue(string value) { return FindValue(value); } /// /// Convert string to StorageClassAnalysisSchemaVersion. /// /// /// public static implicit operator StorageClassAnalysisSchemaVersion(string value) { return FindValue(value); } } internal enum S3QueryParameter { Action, Authorization, BucketVersion, CanonicalizedResource, ContentBody, ContentLength, ContentType, DestinationBucket, Expires, Key, Query, QueryToSign, Range, RequestAddress, RequestTimeout, RequestReadWriteTimeout, Url, Verb, VerifyChecksum, MaxUploads, KeyMarker, UploadIdMarker } /// /// Acknowledges that requester pays for the operation. /// public sealed class RequestPayer : ConstantClass { /// /// Requester pays for the operation. /// public static readonly RequestPayer Requester = new RequestPayer("requester"); private RequestPayer(string value) : base(value) { } /// /// Finds the RequestPayer instance for the string value. /// public static RequestPayer FindValue(string value) { return FindValue(value); } /// /// Converts string to RequestPayer instance /// public static implicit operator RequestPayer(string value) { return FindValue(value); } } /// /// The response from S3 that it confirms that requester pays. /// public sealed class RequestCharged : ConstantClass { /// /// S3 acknowledges that the requester pays. /// public static readonly RequestCharged Requester = new RequestCharged("requester"); private RequestCharged(string value) : base(value) { } /// /// Finds the RequestCharged instance for the string value /// public static RequestCharged FindValue(string value) { return FindValue(value); } /// /// converts the string to RequestCharged instance /// public static implicit operator RequestCharged(string value) { return FindValue(value); } } /// /// The override value for the owner of the replica object. /// public sealed class OwnerOverride : ConstantClass { /// /// Overrides destination bucket's owner. /// public static readonly OwnerOverride Destination = new OwnerOverride("Destination"); public OwnerOverride(string value) : base(value) { } /// /// Finds the OwnerOverride instance for the string value /// public static OwnerOverride FindValue(string value) { return FindValue(value); } /// /// converts the string to OwnerOverride instance /// public static implicit operator OwnerOverride(string value) { return FindValue(value); } } /// /// The replication for KMS encrypted S3 objects is disabled if status is not Enabled. /// public sealed class SseKmsEncryptedObjectsStatus : ConstantClass { /// /// The replication for KMS encrypted S3 objects is enabled. /// public static readonly SseKmsEncryptedObjectsStatus Enabled = new SseKmsEncryptedObjectsStatus("Enabled"); /// /// The replication for KMS encrypted S3 objects is disabled. /// public static readonly SseKmsEncryptedObjectsStatus Disabled = new SseKmsEncryptedObjectsStatus("Disabled"); /// /// /// public SseKmsEncryptedObjectsStatus(string value) : base(value) { } /// /// Finds the SseKmsEncryptedObjectsStatus instance for the string value /// public static SseKmsEncryptedObjectsStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to SseKmsEncryptedObjectsStatus instance /// public static implicit operator SseKmsEncryptedObjectsStatus(string value) { return FindValue(value); } } /// /// Specify how headers will be handled. /// public sealed class FileHeaderInfo : ConstantClass { /// /// Headers will be usable in SELECT clause. /// public static readonly FileHeaderInfo Use = new FileHeaderInfo("USE"); /// /// Headers will be skipped /// public static readonly FileHeaderInfo Ignore = new FileHeaderInfo("IGNORE"); /// /// No header is present. /// public static readonly FileHeaderInfo None = new FileHeaderInfo("NONE"); private FileHeaderInfo(string value) : base(value) { } /// /// Finds the FileHeaderInfo instance for the string value /// /// /// public static FileHeaderInfo FindValue(string value) { return FindValue(value); } /// /// Converts the string to FileHeaderInfo instance /// public static implicit operator FileHeaderInfo(string value) { return FindValue(value); } } /// /// Specifies whether existing object replication is enabled. /// public sealed class ExistingObjectReplicationStatus : ConstantClass { /// /// Enable the replication of existing objects /// public static readonly ExistingObjectReplicationStatus Enabled = new ExistingObjectReplicationStatus("Enabled"); /// /// Disable the replication of existing objects /// public static readonly ExistingObjectReplicationStatus Disabled = new ExistingObjectReplicationStatus("Disabled"); private ExistingObjectReplicationStatus(string value) : base(value) { } /// /// Finds the ExistingObjectReplicationStatus instance for the string value /// /// /// public static ExistingObjectReplicationStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to ExistingObjectReplicationStatus instance /// public static implicit operator ExistingObjectReplicationStatus(string value) { return FindValue(value); } } /// /// Describes when fields in output should be surrounded with quotes. /// public sealed class QuoteFields : ConstantClass { /// /// Specifies that fields in output should always be surrounded in quotes. /// public static readonly QuoteFields Always = new QuoteFields("ALWAYS"); /// /// Specifies that fields in output should be surrounded in quotes as necessary. /// public static readonly QuoteFields AsNeeded = new QuoteFields("ASNEEDED"); private QuoteFields(string value) : base(value) { } /// /// Finds the QuoteFields instance for the string value /// /// string value that maps to QuoteFields enum /// QuoteFields enum public static QuoteFields FindValue(string value) { return FindValue(value); } /// /// Converts the string to QuoteFields instance /// public static implicit operator QuoteFields(string value) { return FindValue(value); } } /// /// Type of the expression provided in the Expression member. /// public sealed class ExpressionType : ConstantClass { /// /// SQL expression /// public static readonly ExpressionType SQL = new ExpressionType("SQL"); private ExpressionType(string value) : base(value) { } /// /// Finds the ExpressionType instance for the string value /// /// string value that maps to ExpressionType enum /// ExpressionType enum public static ExpressionType FindValue(string value) { return FindValue(value); } /// /// Converts the string to ExpressionType instance /// public static implicit operator ExpressionType(string value) { return FindValue(value); } } /// /// Indicates what type of job is being initiated. /// public sealed class RestoreRequestType : ConstantClass { public static readonly RestoreRequestType SELECT = new RestoreRequestType("SELECT"); private RestoreRequestType(string value) : base(value) { } /// /// Finds the RestoreRequestType instance for the string value /// public static RestoreRequestType FindValue(string value) { return FindValue(value); } /// /// Converts the string to RestoreRequestType instance /// public static implicit operator RestoreRequestType(string value) { return FindValue(value); } } /// /// The type of JSON. /// public sealed class JsonType : ConstantClass { public static readonly JsonType Document = new JsonType("DOCUMENT"); public static readonly JsonType Lines = new JsonType("LINES"); private JsonType(string value) : base(value) { } /// /// Finds the JsonType instance for the string value /// public static JsonType FindValue(string value) { return FindValue(value); } /// /// Converts the string to JsonType instance /// public static implicit operator JsonType(string value) { return FindValue(value); } } /// /// Specifies object's compression format. /// public sealed class CompressionType : ConstantClass { public static readonly CompressionType None = new CompressionType("NONE"); public static readonly CompressionType Gzip = new CompressionType("GZIP"); public static readonly CompressionType Bzip2 = new CompressionType("BZIP2"); private CompressionType(string value) : base(value) { } /// /// Finds the CompressionType instance for the string value /// public static CompressionType FindValue(string value) { return FindValue(value); } /// /// Converts the string to CompressionType instance /// public static implicit operator CompressionType(string value) { return FindValue(value); } } /// /// The type of ObjectLockEnabled /// public sealed class ObjectLockEnabled : ConstantClass { public static readonly ObjectLockEnabled Enabled = new ObjectLockEnabled("Enabled"); public ObjectLockEnabled(string value) : base(value) { } /// /// Finds the ObjectLockEnabled instance for the string value /// public static ObjectLockEnabled FindValue(string value) { return FindValue(value); } /// /// Converts the string to ObjectLockEnabled instance /// public static implicit operator ObjectLockEnabled(string value) { return FindValue(value); } } /// /// The type of ObjectLockLegalHoldStatus /// public sealed class ObjectLockLegalHoldStatus : ConstantClass { public static readonly ObjectLockLegalHoldStatus On = new ObjectLockLegalHoldStatus("ON"); public static readonly ObjectLockLegalHoldStatus Off = new ObjectLockLegalHoldStatus("OFF"); public ObjectLockLegalHoldStatus(string value) : base(value) { } /// /// Finds the ObjectLockLegalHoldStatus instance for the string value /// public static ObjectLockLegalHoldStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to ObjectLockLegalHoldStatus instance /// public static implicit operator ObjectLockLegalHoldStatus(string value) { return FindValue(value); } } /// /// The type of ObjectLockRetentionMode /// public sealed class ObjectLockRetentionMode : ConstantClass { public static readonly ObjectLockRetentionMode Governance = new ObjectLockRetentionMode("GOVERNANCE"); public static readonly ObjectLockRetentionMode Compliance = new ObjectLockRetentionMode("COMPLIANCE"); public ObjectLockRetentionMode(string value) : base(value) { } /// /// Finds the ObjectLockRetentionMode instance for the string value /// public static ObjectLockRetentionMode FindValue(string value) { return FindValue(value); } /// /// Converts the string to ObjectLockRetentionMode instance /// public static implicit operator ObjectLockRetentionMode(string value) { return FindValue(value); } } /// /// The type of ObjectLockMode /// public sealed class ObjectLockMode : ConstantClass { public static readonly ObjectLockMode Governance = new ObjectLockMode("GOVERNANCE"); public static readonly ObjectLockMode Compliance = new ObjectLockMode("COMPLIANCE"); public ObjectLockMode(string value) : base(value) { } /// /// Finds the ObjectLockMode instance for the string value /// public static ObjectLockMode FindValue(string value) { return FindValue(value); } /// /// Converts the string to ObjectLockMode instance /// public static implicit operator ObjectLockMode(string value) { return FindValue(value); } } /// /// Constants used for properties of type OptionalObjectAttributes. /// public sealed class OptionalObjectAttributes : ConstantClass { /// /// Constant RestoreStatus for OptionalObjectAttributes /// public static readonly OptionalObjectAttributes RestoreStatus = new OptionalObjectAttributes("RestoreStatus"); /// /// This constant constructor does not need to be called if the constant /// you are attempting to use is already defined as a static instance of /// this class. /// This constructor should be used to construct constants that are not /// defined as statics, for instance if attempting to use a feature that is /// newer than the current version of the SDK. /// public OptionalObjectAttributes(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The unique value for the constant /// The constant for the unique value public static OptionalObjectAttributes FindValue(string value) { return FindValue(value); } /// /// Utility method to convert strings to the constant class. /// /// The string value to convert to the constant class. /// public static implicit operator OptionalObjectAttributes(string value) { return FindValue(value); } } /// /// Specifies whether the replication time is enabled. /// public sealed class ReplicationTimeStatus : ConstantClass { public ReplicationTimeStatus(string value) : base(value) { } /// /// Replication time is enabled. /// public static readonly ReplicationTimeStatus Enabled = new ReplicationTimeStatus("Enabled"); /// /// Replication time is disabled. /// public static readonly ReplicationTimeStatus Disabled = new ReplicationTimeStatus("Disabled"); /// /// Finds the ReplicationTimeStatus instance for the string value /// /// /// public static ReplicationTimeStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to ReplicationTimeStatus instance /// /// public static implicit operator ReplicationTimeStatus(string value) { return FindValue(value); } } /// /// Specifies whether the replication metrics are enabled. /// public sealed class MetricsStatus : ConstantClass { private MetricsStatus(string value) : base(value) { } /// /// Replication metrics are enabled. /// public static readonly MetricsStatus Enabled = new MetricsStatus("Enabled"); /// /// Replication metrics are disabled. /// public static readonly MetricsStatus Disabled = new MetricsStatus("Disabled"); /// /// Finds the MetricsStatus instance for the string value /// /// /// public static MetricsStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to MetricsStatus instance /// /// public static implicit operator MetricsStatus(string value) { return FindValue(value); } } /// /// Specifies who is assigned ownership of objects uploaded to a bucket /// public sealed class ObjectOwnership : ConstantClass { private ObjectOwnership(string value) : base(value) { } /// /// Constant BucketOwnerEnforced for ObjectOwnership /// public static readonly ObjectOwnership BucketOwnerEnforced = new ObjectOwnership("BucketOwnerEnforced"); /// /// Objects uploaded to the bucket change ownership to the bucket owner if the objects are uploaded with the bucket-owner-full-control canned ACL /// public static readonly ObjectOwnership BucketOwnerPreferred = new ObjectOwnership("BucketOwnerPreferred"); /// /// The uploading account will own the object if the object is uploaded with the bucket-owner-full-control canned ACL /// public static readonly ObjectOwnership ObjectWriter = new ObjectOwnership("ObjectWriter"); /// /// Finds the ObjectOwnership instance for the string value /// /// /// public static ObjectOwnership FindValue(string value) { return FindValue(value); } /// /// Converts the string to ObjectOwnership instance /// /// public static implicit operator ObjectOwnership(string value) { return FindValue(value); } } public sealed class IntelligentTieringStatus : ConstantClass { private IntelligentTieringStatus(string value) : base(value) { } /// /// intelligent tiering is enabled. /// public static readonly IntelligentTieringStatus Enabled = new IntelligentTieringStatus("Enabled"); /// /// intelligent tiering is disabled. /// public static readonly IntelligentTieringStatus Disabled = new IntelligentTieringStatus("Disabled"); /// /// Finds the IntelligentTieringStatus instance for the string value /// /// /// public static IntelligentTieringStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to IntelligentTieringStatus instance /// /// public static implicit operator IntelligentTieringStatus(string value) { return FindValue(value); } } public sealed class IntelligentTieringAccessTier : ConstantClass { private IntelligentTieringAccessTier(string value) : base(value) { } /// /// Access Tier is set to Archive Access. /// public static readonly IntelligentTieringAccessTier ARCHIVE_ACCESS = new IntelligentTieringAccessTier("ARCHIVE_ACCESS"); /// /// Access Tier is set to Deep Archive Access. /// public static readonly IntelligentTieringAccessTier DEEP_ARCHIVE_ACCESS = new IntelligentTieringAccessTier("DEEP_ARCHIVE_ACCESS"); /// /// Finds the IntelligentTieringAccessTier instance for the string value /// /// /// public static IntelligentTieringAccessTier FindValue(string value) { return FindValue(value); } /// /// Converts the string to IntelligentTieringAccessTier instance /// /// public static implicit operator IntelligentTieringAccessTier(string value) { return FindValue(value); } } /// /// The Archive status associated with this source object. /// public sealed class ArchiveStatus : ConstantClass { /// /// The Status is ARCHIVE_ACCESS. /// public static readonly ArchiveStatus ARCHIVE_ACCESS = new ArchiveStatus("ARCHIVE_ACCESS"); /// /// The Status is DEEP_ARCHIVE_ACCESS. /// public static readonly ArchiveStatus DEEP_ARCHIVE_ACCESS = new ArchiveStatus("DEEP_ARCHIVE_ACCESS"); /// /// Construct instance of ArchiveStatus. /// /// public ArchiveStatus(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The string representation of the ArchiveStatus. /// The ArchiveStatus object for that string. public static ArchiveStatus FindValue(string value) { return FindValue(value); } /// /// Convert string to ArchiveStatus. /// /// /// public static implicit operator ArchiveStatus(string value) { return FindValue(value); } } public sealed class ReplicaModificationsStatus : ConstantClass { private ReplicaModificationsStatus(string value) : base(value) { } /// /// Replica Modification is enabled. /// public static readonly ReplicaModificationsStatus Enabled = new ReplicaModificationsStatus("Enabled"); /// /// Replica Modification is disabled. /// public static readonly ReplicaModificationsStatus Disabled = new ReplicaModificationsStatus("Disabled"); /// /// Finds the ReplicaModificationsStatus instance for the string value /// /// /// public static ReplicaModificationsStatus FindValue(string value) { return FindValue(value); } /// /// Converts the string to ReplicaModificationsStatus instance /// /// public static implicit operator ReplicaModificationsStatus(string value) { return FindValue(value); } } /// /// Constants used for properties of type ChecksumAlgorithm. /// public class ChecksumAlgorithm : ConstantClass { /// /// Constant CRC32 for ChecksumAlgorithm /// public static readonly ChecksumAlgorithm CRC32 = new ChecksumAlgorithm("CRC32"); /// /// Constant CRC32C for ChecksumAlgorithm /// public static readonly ChecksumAlgorithm CRC32C = new ChecksumAlgorithm("CRC32C"); /// /// Constant SHA1 for ChecksumAlgorithm /// public static readonly ChecksumAlgorithm SHA1 = new ChecksumAlgorithm("SHA1"); /// /// Constant SHA256 for ChecksumAlgorithm /// public static readonly ChecksumAlgorithm SHA256 = new ChecksumAlgorithm("SHA256"); /// /// This constant constructor does not need to be called if the constant /// you are attempting to use is already defined as a static instance of /// this class. /// This constructor should be used to construct constants that are not /// defined as statics, for instance if attempting to use a feature that is /// newer than the current version of the SDK. /// public ChecksumAlgorithm(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The unique value for the constant /// The constant for the unique value public static ChecksumAlgorithm FindValue(string value) { return FindValue(value); } /// /// Utility method to convert strings to the constant class. /// /// The string value to convert to the constant class. /// public static implicit operator ChecksumAlgorithm(string value) { return FindValue(value); } } /// /// Constants used for properties of type ChecksumMode. /// public class ChecksumMode : ConstantClass { /// /// Constant ENABLED for ChecksumMode /// public static readonly ChecksumMode ENABLED = new ChecksumMode("ENABLED"); /// /// This constant constructor does not need to be called if the constant /// you are attempting to use is already defined as a static instance of /// this class. /// This constructor should be used to construct constants that are not /// defined as statics, for instance if attempting to use a feature that is /// newer than the current version of the SDK. /// public ChecksumMode(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The unique value for the constant /// The constant for the unique value public static ChecksumMode FindValue(string value) { return FindValue(value); } /// /// Utility method to convert strings to the constant class. /// /// The string value to convert to the constant class. /// public static implicit operator ChecksumMode(string value) { return FindValue(value); } } /// /// Constants used for properties of type ObjectAttributes. /// public class ObjectAttributes : ConstantClass { /// /// Constant Checksum for ObjectAttributes /// public static readonly ObjectAttributes Checksum = new ObjectAttributes("Checksum"); /// /// Constant ETag for ObjectAttributes /// public static readonly ObjectAttributes ETag = new ObjectAttributes("ETag"); /// /// Constant ObjectParts for ObjectAttributes /// public static readonly ObjectAttributes ObjectParts = new ObjectAttributes("ObjectParts"); /// /// Constant ObjectSize for ObjectAttributes /// public static readonly ObjectAttributes ObjectSize = new ObjectAttributes("ObjectSize"); /// /// Constant StorageClass for ObjectAttributes /// public static readonly ObjectAttributes StorageClass = new ObjectAttributes("StorageClass"); /// /// This constant constructor does not need to be called if the constant /// you are attempting to use is already defined as a static instance of /// this class. /// This constructor should be used to construct constants that are not /// defined as statics, for instance if attempting to use a feature that is /// newer than the current version of the SDK. /// public ObjectAttributes(string value) : base(value) { } /// /// Finds the constant for the unique value. /// /// The unique value for the constant /// The constant for the unique value public static ObjectAttributes FindValue(string value) { return FindValue(value); } /// /// Utility method to convert strings to the constant class. /// /// The string value to convert to the constant class. /// public static implicit operator ObjectAttributes(string value) { return FindValue(value); } } }