/*
* 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 s3control-2018-08-20.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.S3Control.Model
{
///
/// Container for the parameters to the PutBucketLifecycleConfiguration operation.
///
///
/// This action puts a lifecycle configuration to an Amazon S3 on Outposts bucket. To
/// put a lifecycle configuration to an S3 bucket, see PutBucketLifecycleConfiguration
/// in the Amazon S3 API Reference.
///
///
///
/// Creates a new lifecycle configuration for the S3 on Outposts bucket or replaces an
/// existing lifecycle configuration. Outposts buckets only support lifecycle configurations
/// that delete/expire objects after a certain period of time and abort incomplete multipart
/// uploads.
///
///
///
/// All Amazon S3 on Outposts REST API requests for this action require an additional
/// parameter of x-amz-outpost-id
to be passed with the request. In addition,
/// you must use an S3 on Outposts endpoint hostname prefix instead of s3-control
.
/// For an example of the request syntax for Amazon S3 on Outposts that uses the S3 on
/// Outposts endpoint hostname prefix and the x-amz-outpost-id
derived by
/// using the access point ARN, see the Examples
/// section.
///
///
///
/// The following actions are related to PutBucketLifecycleConfiguration
:
///
///
///
public partial class PutBucketLifecycleConfigurationRequest : AmazonS3ControlRequest
{
private string _accountId;
private string _bucket;
private LifecycleConfiguration _lifecycleConfiguration;
///
/// Gets and sets the property AccountId.
///
/// The Amazon Web Services account ID of the Outposts bucket.
///
///
[AWSProperty(Required=true, Max=64)]
public string AccountId
{
get { return this._accountId; }
set { this._accountId = value; }
}
// Check to see if AccountId property is set
internal bool IsSetAccountId()
{
return this._accountId != null;
}
///
/// Gets and sets the property Bucket.
///
/// The name of the bucket for which to set the configuration.
///
///
[AWSProperty(Required=true, Min=3, Max=255)]
public string Bucket
{
get { return this._bucket; }
set { this._bucket = value; }
}
// Check to see if Bucket property is set
internal bool IsSetBucket()
{
return this._bucket != null;
}
///
/// Gets and sets the property LifecycleConfiguration.
///
/// Container for lifecycle rules. You can add as many as 1,000 rules.
///
///
public LifecycleConfiguration LifecycleConfiguration
{
get { return this._lifecycleConfiguration; }
set { this._lifecycleConfiguration = value; }
}
// Check to see if LifecycleConfiguration property is set
internal bool IsSetLifecycleConfiguration()
{
return this._lifecycleConfiguration != null;
}
}
}