static void WriteObjectRetention() { string id = Common.InputString("Key:", null, false); try { PutObjectRetentionRequest request = new PutObjectRetentionRequest { BucketName = _Bucket, Key = id }; request.Retention = new ObjectLockRetention(); request.Retention.Mode = "foo"; request.Retention.RetainUntilDate = DateTime.Now.AddYears(5); PutObjectRetentionResponse response = _S3Client.PutObjectRetentionAsync(request).Result; int statusCode = (int)response.HttpStatusCode; if (response != null) { Console.WriteLine("Success"); return; } else { Console.WriteLine("Failed"); return; } } catch (Exception e) { Console.WriteLine(Common.SerializeJson(e, true)); } }
/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) { PutObjectRetentionResponse response = new PutObjectRetentionResponse(); if (context.ResponseData.IsHeaderPresent("x-amz-request-charged")) { response.RequestCharged = context.ResponseData.GetHeaderValue("x-amz-request-charged"); } return(response); }