/* * Copyright 2010-2013 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. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.S3.Model { /// /// Container for the parameters to the PutBucket operation. /// Creates a new bucket. /// public partial class PutBucketRequest : PutWithACLRequest { private string bucketName; private S3Region bucketRegion; private string bucketRegionName; private bool useClientRegion = true; private S3CannedACL cannedAcl; private bool? _objectLockEnabledForBucket; /// /// The canned ACL to apply to the bucket. /// /// public S3CannedACL CannedACL { get { return this.cannedAcl; } set { this.cannedAcl = value; } } // Check to see if ACL property is set internal bool IsSetCannedACL() { return cannedAcl != null && cannedAcl != S3CannedACL.NoACL; } /// /// If set to true the bucket will be created in the same region /// as the configuration of the AmazonS3 client. /// If PutBucketRequest.BucketRegion or PutBucketRequest.BucketRegionName are set they take precedence over /// this property. /// Default: true. /// public bool UseClientRegion { get { return this.useClientRegion; } set { this.useClientRegion = value; } } /// /// The name of the bucket to be created. /// public string BucketName { get { return this.bucketName; } set { this.bucketName = value; } } // Check to see if BucketName property is set internal bool IsSetBucketName() { return this.bucketName != null; } /// /// The region locality for the bucket. /// /// /// When set, this will determine where your data will /// reside in S3. Refer /// for a list of possible values. /// public S3Region BucketRegion { get { return this.bucketRegion; } set { this.bucketRegion = value; } } // Check to see if BucketRegion property is set internal bool IsSetBucketRegion() { return this.bucketRegion != null; } /// /// The bucket region locality expressed using the name of the region. /// When set, this will determine where your data will reside in S3. /// Valid values: us-east-1, us-west-1, us-west-2, eu-west-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, sa-east-1 /// public string BucketRegionName { get { return this.bucketRegionName; } set { this.bucketRegionName = value; } } // Check to see if BucketRegionName property is set internal bool IsSetBucketRegionName() { return !string.IsNullOrEmpty(this.bucketRegionName); } /// /// Gets and sets the property ObjectLockEnabledForBucket. /// /// Specifies whether you want S3 Object Lock to be enabled for the new bucket. /// /// public bool ObjectLockEnabledForBucket { get { return this._objectLockEnabledForBucket.GetValueOrDefault(); } set { this._objectLockEnabledForBucket = value; } } // Check to see if ObjectLockEnabledForBucket property is set internal bool IsSetObjectLockEnabledForBucket() { return this._objectLockEnabledForBucket.HasValue; } } }