public void Test_putBucketLifecycle() { PutBucketLifecycleRequest request = new PutBucketLifecycleRequest(); request.BucketName = bucketName; request.Body = new PutBucketLifecycleRequest.PutBucketLifecycleRequestBody { LifecycleConfiguration = new PutBucketLifecycleRequest.PutBucketLifecycleRequestBody.PutBucketLifecycleRequestLifecycleConfiguration { Rule = new List <PutBucketLifecycleRequest.PutBucketLifecycleRequestBody.PutBucketLifecycleRequestLifecycleConfiguration.PutBucketLifecycleRequestRule> { new PutBucketLifecycleRequest.PutBucketLifecycleRequestBody.PutBucketLifecycleRequestLifecycleConfiguration.PutBucketLifecycleRequestRule { ID = "1", Prefix = "Prefix", Status = "Disabled", Expiration = new PutBucketLifecycleRequest.PutBucketLifecycleRequestBody.PutBucketLifecycleRequestLifecycleConfiguration.PutBucketLifecycleRequestRule.PutBucketLifecycleRequestExpiration { Days = 1 } } } } }; var response = client.putBucketLifecycle(request, runtime); Assert.NotNull(response); }
public void putBucketLifecycle() { //.cssg-snippet-body-start:[put-bucket-lifecycle] CosXmlConfig config = new CosXmlConfig.Builder() .SetConnectionTimeoutMs(60000) //设置连接超时时间,单位毫秒,默认45000ms .SetReadWriteTimeoutMs(40000) //设置读写超时时间,单位毫秒,默认45000ms .IsHttps(true) //设置默认 HTTPS 请求 .SetAppid("1253653367") //设置腾讯云账户的账户标识 APPID .SetRegion("ap-guangzhou") //设置一个默认的存储桶地域 .Build(); string secretId = Environment.GetEnvironmentVariable("COS_KEY"); //云 API 密钥 SecretId string secretKey = Environment.GetEnvironmentVariable("COS_SECRET"); //云 API 密钥 SecretKey long durationSecond = 600; //每次请求签名有效时长,单位为秒 QCloudCredentialProvider qCloudCredentialProvider = new DefaultQCloudCredentialProvider(secretId, secretKey, durationSecond); CosXml cosXml = new CosXmlServer(config, qCloudCredentialProvider); try { string bucket = "bucket-cssg-test-dotnet-1253653367"; //格式:BucketName-APPID PutBucketLifecycleRequest request = new PutBucketLifecycleRequest(bucket); //设置签名有效时长 request.SetSign(TimeUtils.GetCurrentTime(TimeUnit.SECONDS), 600); //设置 lifecycle LifecycleConfiguration.Rule rule = new LifecycleConfiguration.Rule(); rule.id = "lfiecycleConfigureId"; rule.status = "Enabled"; //Enabled,Disabled rule.filter = new COSXML.Model.Tag.LifecycleConfiguration.Filter(); rule.filter.prefix = "2/"; //指定分片过期删除操作 rule.abortIncompleteMultiUpload = new LifecycleConfiguration.AbortIncompleteMultiUpload(); rule.abortIncompleteMultiUpload.daysAfterInitiation = 2; request.SetRule(rule); //执行请求 PutBucketLifecycleResult result = cosXml.PutBucketLifecycle(request); //请求成功 Console.WriteLine(result.GetResultInfo()); } catch (COSXML.CosException.CosClientException clientEx) { //请求失败 Console.WriteLine("CosClientException: " + clientEx); Assert.Null(clientEx); } catch (COSXML.CosException.CosServerException serverEx) { //请求失败 Console.WriteLine("CosServerException: " + serverEx.GetInfo()); Assert.Null(serverEx); } //.cssg-snippet-body-end }
public static void AsynPutBucketLifeCycle(COSXML.CosXml cosXml, string bucket) { PutBucketLifecycleRequest request = new PutBucketLifecycleRequest(bucket); //设置签名有效时长 request.SetSign(TimeUtils.GetCurrentTime(TimeUnit.SECONDS), 600); //设置 lifecycle COSXML.Model.Tag.LifecycleConfiguration.Rule rule = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); rule.id = "lfiecycleConfig3"; rule.status = "Enabled"; //Enabled,Disabled rule.filter = new COSXML.Model.Tag.LifecycleConfiguration.Filter(); rule.filter.prefix = "3"; rule.abortIncompleteMultiUpload = new COSXML.Model.Tag.LifecycleConfiguration.AbortIncompleteMultiUpload(); rule.abortIncompleteMultiUpload.daysAfterInitiation = 2; request.SetRule(rule); ///执行请求 cosXml.PutBucketLifecycle(request, delegate(CosResult cosResult) { PutBucketLifecycleResult result = cosResult as PutBucketLifecycleResult; Console.WriteLine(result.GetResultInfo()); }, delegate(CosClientException clientEx, CosServerException serverEx) { if (clientEx != null) { QLog.D("XIAO", clientEx.Message); Console.WriteLine("CosClientException: " + clientEx.Message); } if (serverEx != null) { QLog.D("XIAO", serverEx.Message); Console.WriteLine("CosServerException: " + serverEx.GetInfo()); } }); }
/// 设置存储桶生命周期 public void PutBucketLifecycle() { //.cssg-snippet-body-start:[put-bucket-lifecycle] try { string bucket = "examplebucket-1250000000"; //格式:BucketName-APPID PutBucketLifecycleRequest request = new PutBucketLifecycleRequest(bucket); //设置 lifecycle LifecycleConfiguration.Rule rule = new LifecycleConfiguration.Rule(); rule.id = "lfiecycleConfigureId"; rule.status = "Enabled"; //Enabled,Disabled rule.filter = new COSXML.Model.Tag.LifecycleConfiguration.Filter(); rule.filter.prefix = "2/"; //指定分片过期删除操作 rule.abortIncompleteMultiUpload = new LifecycleConfiguration.AbortIncompleteMultiUpload(); rule.abortIncompleteMultiUpload.daysAfterInitiation = 2; request.SetRule(rule); //执行请求 PutBucketLifecycleResult result = cosXml.PutBucketLifecycle(request); //请求成功 Console.WriteLine(result.GetResultInfo()); } catch (COSXML.CosException.CosClientException clientEx) { //请求失败 Console.WriteLine("CosClientException: " + clientEx); } catch (COSXML.CosException.CosServerException serverEx) { //请求失败 Console.WriteLine("CosServerException: " + serverEx.GetInfo()); } //.cssg-snippet-body-end }
private void PutBucketLifeCycle() { try { PutBucketLifecycleRequest request = new PutBucketLifecycleRequest(bucket); var filter = new COSXML.Model.Tag.LifecycleConfiguration.Filter(); filter.filterAnd = new LifecycleConfiguration.FilterAnd(); filter.filterAnd.prefix = "dir/"; filter.filterAnd.tags = new List <Tagging.Tag>(); filter.filterAnd.tags.Add(new Tagging.Tag("key1", "value1")); //设置 lifecycle COSXML.Model.Tag.LifecycleConfiguration.Rule transitionRule1 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); // rule 1 transitionRule1.id = "transitionRule1"; //Enabled,Disabled transitionRule1.status = "Enabled"; transitionRule1.filter = filter; transitionRule1.transition = new LifecycleConfiguration.Transition(); transitionRule1.transition.days = 5; transitionRule1.transition.storageClass = "ARCHIVE"; request.SetRule(transitionRule1); // rule 2 COSXML.Model.Tag.LifecycleConfiguration.Rule expirationRule2 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); expirationRule2.id = "expirationRule2"; expirationRule2.status = "Enabled"; expirationRule2.filter = filter; expirationRule2.expiration = new LifecycleConfiguration.Expiration(); expirationRule2.expiration.date = "2021-12-14T00:00:00+08:00"; request.SetRule(expirationRule2); // rule 3 COSXML.Model.Tag.LifecycleConfiguration.Rule expirationRule3 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); expirationRule3.id = "expirationRule3"; expirationRule3.status = "Enabled"; expirationRule3.expiration = new LifecycleConfiguration.Expiration(); // expiredObjectDeleteMarker 的时候 filter 不能有 tag expirationRule3.expiration.expiredObjectDeleteMarker = true; request.SetRule(expirationRule3); // rule 4 COSXML.Model.Tag.LifecycleConfiguration.Rule abortRule4 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); abortRule4.id = "abortRule4"; abortRule4.status = "Enabled"; abortRule4.abortIncompleteMultiUpload = new COSXML.Model.Tag.LifecycleConfiguration.AbortIncompleteMultiUpload(); abortRule4.abortIncompleteMultiUpload.daysAfterInitiation = 2; request.SetRule(abortRule4); // rule 5 COSXML.Model.Tag.LifecycleConfiguration.Rule ncve1 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); ncve1.id = "noncurrentVersionExpiration1"; ncve1.status = "Enabled"; ncve1.noncurrentVersionExpiration = new LifecycleConfiguration.NoncurrentVersionExpiration(); ncve1.noncurrentVersionExpiration.noncurrentDays = 2; request.SetRule(ncve1); // rule 6 COSXML.Model.Tag.LifecycleConfiguration.Rule ncvt1 = new COSXML.Model.Tag.LifecycleConfiguration.Rule(); ncvt1.id = "noncurrentVersionTransition1"; ncvt1.status = "Enabled"; ncvt1.noncurrentVersionTransition = new LifecycleConfiguration.NoncurrentVersionTransition(); ncvt1.noncurrentVersionTransition.noncurrentDays = 2; ncvt1.noncurrentVersionTransition.storageClass = "ARCHIVE"; request.SetRule(ncvt1); //执行请求 PutBucketLifecycleResult result = cosXml.PutBucketLifecycle(request); Assert.AreEqual(result.httpCode, 200); } catch (COSXML.CosException.CosClientException clientEx) { Console.WriteLine("CosClientException: " + clientEx.Message); Assert.Fail(); } catch (COSXML.CosException.CosServerException serverEx) { Console.WriteLine("CosServerException: " + serverEx.GetInfo()); Assert.Fail(); } }
public void PutBucketLifecycle(PutBucketLifecycleRequest request, Callback.OnSuccessCallback <CosResult> successCallback, Callback.OnFailedCallback failCallback) { Schedue(request, new PutBucketLifecycleResult(), successCallback, failCallback); }
public PutBucketLifecycleResult PutBucketLifecycle(PutBucketLifecycleRequest request) { return((Model.Bucket.PutBucketLifecycleResult)Excute(request, new Model.Bucket.PutBucketLifecycleResult())); }