/*
* 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.
*/
/*
* Do not modify this file. This file is generated from the s3-2006-03-01.normal.json service model.
*/
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 PutObjectLockConfiguration operation.
/// Places an Object Lock configuration on the specified bucket. The rule specified in
/// the Object Lock configuration will be applied by default to every new object placed
/// in the specified bucket. For more information, see Locking
/// Objects.
///
/// -
///
/// The
DefaultRetention
settings require both a mode and a period.
///
/// -
///
/// The
DefaultRetention
period can be either Days
or Years
/// but you must select one. You cannot specify Days
and Years
/// at the same time.
///
/// -
///
/// You can only enable Object Lock for new buckets. If you want to turn on Object Lock
/// for an existing bucket, contact Amazon Web Services Support.
///
///
///
public partial class PutObjectLockConfigurationRequest : AmazonWebServiceRequest
{
private string _bucketName;
private ChecksumAlgorithm _checksumAlgorithm;
private string _contentMD5;
private ObjectLockConfiguration _objectLockConfiguration;
private RequestPayer _requestPayer;
private string _token;
private string expectedBucketOwner;
///
/// Gets and sets the property BucketName.
///
/// The bucket whose Object Lock configuration you want to create or replace.
///
///
public string BucketName
{
get { return this._bucketName; }
set { this._bucketName = value; }
}
// Check to see if BucketName property is set
internal bool IsSetBucketName()
{
return !string.IsNullOrEmpty(this._bucketName);
}
///
/// Gets and sets the property ChecksumAlgorithm.
///
/// Indicates the algorithm used to create the checksum for the object. Amazon S3 will
/// fail the request with a 400 error if there is no checksum associated with the object.
/// For more information, see
/// Checking object integrity in the Amazon S3 User Guide.
///
///
public ChecksumAlgorithm ChecksumAlgorithm
{
get { return this._checksumAlgorithm; }
set { this._checksumAlgorithm = value; }
}
// Check to see if ChecksumAlgorithm property is set
internal bool IsSetChecksumAlgorithm()
{
return this._checksumAlgorithm != null;
}
///
/// Gets and sets the property ContentMD5.
///
/// The MD5 hash for the request body.
///
///
///
/// For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon
/// Web Services SDKs, this field is calculated automatically.
///
///
public string ContentMD5
{
get { return this._contentMD5; }
set { this._contentMD5 = value; }
}
// Check to see if ContentMD5 property is set
internal bool IsSetContentMD5()
{
return !string.IsNullOrEmpty(this._contentMD5);
}
///
/// Gets and sets the property ObjectLockConfiguration.
///
/// The Object Lock configuration that you want to apply to the specified bucket.
///
///
public ObjectLockConfiguration ObjectLockConfiguration
{
get { return this._objectLockConfiguration; }
set { this._objectLockConfiguration = value; }
}
// Check to see if ObjectLockConfiguration property is set
internal bool IsSetObjectLockConfiguration()
{
return this._objectLockConfiguration != null;
}
///
/// Gets and sets the property RequestPayer.
///
public RequestPayer RequestPayer
{
get { return this._requestPayer; }
set { this._requestPayer = value; }
}
// Check to see if RequestPayer property is set
internal bool IsSetRequestPayer()
{
return this._requestPayer != null;
}
///
/// Gets and sets the property Token.
///
public string Token
{
get { return this._token; }
set { this._token = value; }
}
// Check to see if Token property is set
internal bool IsSetToken()
{
return !string.IsNullOrEmpty(this._token);
}
///
/// The account ID of the expected bucket owner.
/// If the bucket is owned by a different account, the request will fail with an HTTP 403 (Access Denied) error.
///
public string ExpectedBucketOwner
{
get { return this.expectedBucketOwner; }
set { this.expectedBucketOwner = value; }
}
///
/// Checks to see if ExpectedBucketOwner is set.
///
/// true, if ExpectedBucketOwner property is set.
internal bool IsSetExpectedBucketOwner()
{
return !String.IsNullOrEmpty(this.expectedBucketOwner);
}
}
}