 Declaration Syntax
 Declaration Syntax| C# | 
GetLifecycleConfigurationResponse GetLifecycleConfiguration( GetLifecycleConfigurationRequest request )
 Parameters
 Parameters- request (GetLifecycleConfigurationRequest)
- The GetLifecycleConfigurationRequest that defines the parameters of the operation.
 Return Value
 Return Value Remarks
 RemarksIf no configuration has been set for the bucket, the Configuration property of the response will be null.
Lifecycle configuration provides a way to define the lifetime of objects for a keyspace. Objects are automatically deleted after the predefined lifetime.
For more information on lifecycle configurations, refer: http://docs.amazonwebservices.com/AmazonS3/latest/dev/
 Examples
 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.
        
 CopyLifecycleConfiguration samples
CopyLifecycleConfiguration 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);
 Exceptions
 Exceptions| Exception | Condition | 
|---|---|
| ArgumentNullException | |
| WebException | |
| AmazonS3Exception |