Ejemplo n.º 1
0
        static void ReadObjectRetention()
        {
            string id = Common.InputString("Key:", null, false);

            GetObjectRetentionRequest request = new GetObjectRetentionRequest();

            request.BucketName = _Bucket;
            request.Key        = id;

            GetObjectRetentionResponse response = _S3Client.GetObjectRetentionAsync(request).Result;

            if (response != null)
            {
                if (response.Retention != null)
                {
                    Console.WriteLine(Common.SerializeXml(response.Retention));
                }

                Console.WriteLine("Success");
            }
            else
            {
                Console.WriteLine("Failed");
            }
        }
        public void TestObjectRetention_SetCompliance()
        {
            AddObjectLockConfiguration();

            DateTime date = DateTime.Now.AddMinutes(15);
            var      key  = PutObject();

            try
            {
                //Put the object retention on the specific object
                var putRequest = new PutObjectRetentionRequest
                {
                    BucketName = bucketName,
                    BypassGovernanceRetention = true,
                    Retention = new ObjectLockRetention
                    {
                        Mode            = ObjectLockRetentionMode.Governance,
                        RetainUntilDate = date
                    },
                    RequestPayer = RequestPayer.Requester,
                    Key          = key
                };

                var putResponse = Client.PutObjectRetention(putRequest);
                Assert.AreEqual(true, putResponse.HttpStatusCode == HttpStatusCode.OK);

                //Get the object retention
                var getRequest = new GetObjectRetentionRequest
                {
                    BucketName   = bucketName,
                    Key          = key,
                    RequestPayer = RequestPayer.Requester
                };

                var getResponse = Client.GetObjectRetention(getRequest);
                Assert.AreEqual(true, getResponse.HttpStatusCode == HttpStatusCode.OK);

                Assert.AreEqual(ObjectLockRetentionMode.Governance, getResponse.Retention.Mode);
                Assert.AreEqual(date.ToString(), getResponse.Retention.RetainUntilDate.ToString());
            }
            catch
            {
                throw;
            }
            finally
            {
                DeleteObject(key);
            }
        }
Ejemplo n.º 3
0
 public Task <GetObjectRetentionResponse> GetObjectRetentionAsync(GetObjectRetentionRequest request, CancellationToken cancellationToken = default)
 {
     throw new NotImplementedException();
 }