AWS SDK Version 2 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

.NET Framework 3.5
 
Returns information about the PutLifecycleConfiguration response metadata. The PutLifecycleConfiguration operation has a void result type.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonWebServiceResponse
    Amazon.S3.Model.PutLifecycleConfigurationResponse

Namespace: Amazon.S3.Model
Assembly: AWSSDK.dll
Version: (assembly version)

Syntax

C#
public class PutLifecycleConfigurationResponse : AmazonWebServiceResponse

The PutLifecycleConfigurationResponse type exposes the following members

Constructors

Properties

NameTypeDescription
Public Property ContentLength System.Int64 Inherited from Amazon.Runtime.AmazonWebServiceResponse.
Public Property HttpStatusCode System.Net.HttpStatusCode Inherited from Amazon.Runtime.AmazonWebServiceResponse.
Public Property ResponseMetadata Amazon.Runtime.ResponseMetadata Inherited from Amazon.Runtime.AmazonWebServiceResponse.

Examples

This example shows how to Get, Put and Delete bucket Lifecycle Configurations.
A Lifecycle Configuration allows an owner to configure when specific objects should be deleted. Objects to be deleted are specified with a prefix.
The configuration being used has rules that delete objects with a specific prefix and objects in a specific subdirectory.

LifecycleConfiguration samples


// Create a client
AmazonS3Client client = new AmazonS3Client();


// Put sample lifecycle configuration (overwrite an existing configuration)
LifecycleConfiguration newConfiguration = new LifecycleConfiguration
{
    Rules = new List<LifecycleRule>
    {
        // Rule to delete keys with prefix "Test-" after 5 days
        new LifecycleRule
        {
            Prefix = "Test-",
            Expiration = new LifecycleRuleExpiration { Days = 5 }
        },
        // Rule to delete keys in subdirectory "Logs" after 2 days
        new LifecycleRule
        {
            Prefix = "Logs/",
            Expiration = new LifecycleRuleExpiration  { Days = 2 },
            Id = "log-file-removal"
        }
    }
};
PutLifecycleConfigurationRequest putRequest = new PutLifecycleConfigurationRequest
{
    BucketName = "SampleBucket",
    Configuration = newConfiguration
};
client.PutLifecycleConfiguration(putRequest);


// Retrieve current configuration
GetLifecycleConfigurationRequest getRequest = new GetLifecycleConfigurationRequest
{
    BucketName = "SampleBucket"
};
LifecycleConfiguration configuration = client.GetLifecycleConfiguration(getRequest).Configuration;

Console.WriteLine("Configuration contains {0} rules", configuration.Rules.Count);
foreach (LifecycleRule rule in configuration.Rules)
{
    Console.WriteLine("Rule");
    Console.WriteLine(" Prefix = " + rule.Prefix);
    Console.WriteLine(" Expiration (days) = " + rule.Expiration.Days);
    Console.WriteLine(" Id = " + rule.Id);
    Console.WriteLine(" Status = " + rule.Status);
}


// Put a new configuration and overwrite the existing configuration
configuration.Rules.RemoveAt(0);    // remove first rule
client.PutLifecycleConfiguration(putRequest);

// Delete current configuration
DeleteLifecycleConfigurationRequest deleteRequest = new DeleteLifecycleConfigurationRequest
{
    BucketName = "SampleBucket"
};
client.DeleteLifecycleConfiguration(deleteRequest);


// Retrieve current configuration and verify that it is null
configuration = client.GetLifecycleConfiguration(getRequest).Configuration;
Debug.Assert(configuration == null);

                

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

.NET for Windows Store apps:
Supported in: Windows 8.1, Windows 8

.NET for Windows Phone:
Supported in: Windows Phone 8.1, Windows Phone 8