tencent cloud

Feedback

Lifecycle

Last updated: 2022-01-24 12:37:08

    Overview

    This document provides an overview of APIs and SDK code samples related to lifecycles.

    API Operation Description
    PUT Bucket lifecycle Setting lifecycle configuration Sets lifecycle for a bucket
    GET Bucket lifecycle Querying a lifecycle configuration Queries the lifecycle configuration of a bucket
    DELETE Bucket lifecycle Deleting a lifecycle configuration Deletes the lifecycle configuration of a bucket

    SDK API References

    For the parameters and method descriptions of all the APIs in the SDK, see SDK API Reference.

    Setting a Lifecycle Configuration

    Description

    This API is used to set the lifecycle configuration of a specified bucket.

    Sample code

    // Bucket name in the format of BucketName-APPID (APPID is required), which can be viewed in the COS console at https://console.intl.cloud.tencent.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    PutBucketLifecycleRequest putBucketLifecycleRequest =
           new PutBucketLifecycleRequest(bucket);
    // Specify a lifecycle configuration rule
    LifecycleConfiguration.Rule rule = new LifecycleConfiguration.Rule();
    rule.id = "Lifecycle ID";
    LifecycleConfiguration.Filter filter = new LifecycleConfiguration.Filter();
    // Specify the prefix to which the rule applies
    filter.prefix = "dir/";
    rule.filter = filter;
    // Specify whether to enable the rule
    rule.status = "Enabled";
    // Specify the number of days after which the object is last modified that the action in the rule will be performed
    LifecycleConfiguration.Transition transition =
           new LifecycleConfiguration.Transition();
    transition.days = 100;
    transition.storageClass = COSStorageClass.STANDARD.getStorageClass();
    rule.transition = transition;
    putBucketLifecycleRequest.setRuleList(rule);
    cosXmlService.putBucketLifecycleAsync(putBucketLifecycleRequest,
           new CosXmlResultListener() {
       @Override
       public void onSuccess(CosXmlRequest request, CosXmlResult result) {
           PutBucketLifecycleResult putBucketLifecycleResult =
                   (PutBucketLifecycleResult) result;
       }
        // If you use the Kotlin language to call this, please note that the exception in the callback method is nullable; otherwise, the onFail method will not be called back, that is:
       // clientException is of type CosXmlClientException? and serviceException is of type CosXmlServiceException?
       @Override
       public void onFail(CosXmlRequest cosXmlRequest,
                          @Nullable CosXmlClientException clientException,
                          @Nullable CosXmlServiceException serviceException) {
           if (clientException != null) {
               clientException.printStackTrace();
           } else {
               serviceException.printStackTrace();
           }
       }
    });
    
    Note:

    For more samples, please visit GitHub.

    Querying a Lifecycle Configuration

    Description

    This API is used to query the lifecycle management configuration of a bucket.

    Sample code

    // Bucket name in the format of BucketName-APPID (APPID is required), which can be viewed in the COS console at https://console.intl.cloud.tencent.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    GetBucketLifecycleRequest getBucketLifecycleRequest =
           new GetBucketLifecycleRequest(bucket);
    cosXmlService.getBucketLifecycleAsync(getBucketLifecycleRequest,
           new CosXmlResultListener() {
       @Override
       public void onSuccess(CosXmlRequest request, CosXmlResult result) {
           GetBucketLifecycleResult getBucketLifecycleResult =
                   (GetBucketLifecycleResult) result;
       }
        // If you use the Kotlin language to call this, please note that the exception in the callback method is nullable; otherwise, the onFail method will not be called back, that is:
       // clientException is of type CosXmlClientException? and serviceException is of type CosXmlServiceException?
       @Override
       public void onFail(CosXmlRequest cosXmlRequest,
                          @Nullable CosXmlClientException clientException,
                          @Nullable CosXmlServiceException serviceException) {
           if (clientException != null) {
               clientException.printStackTrace();
           } else {
               serviceException.printStackTrace();
           }
       }
    });
    
    Note:

    For more samples, please visit GitHub.

    Deleting a Lifecycle Configuration

    Description

    This API is used to delete the lifecycle management configuration of a bucket.

    Sample code

    // Bucket name in the format of BucketName-APPID (APPID is required), which can be viewed in the COS console at https://console.intl.cloud.tencent.com/cos5/bucket
    String bucket = "examplebucket-1250000000";
    DeleteBucketLifecycleRequest deleteBucketLifecycleRequest =
           new DeleteBucketLifecycleRequest(bucket);
    cosXmlService.deleteBucketLifecycleAsync(deleteBucketLifecycleRequest,
           new CosXmlResultListener() {
       @Override
       public void onSuccess(CosXmlRequest request, CosXmlResult result) {
           DeleteBucketLifecycleResult deleteBucketLifecycleResult =
                   (DeleteBucketLifecycleResult) result;
       }
        // If you use the Kotlin language to call this, please note that the exception in the callback method is nullable; otherwise, the onFail method will not be called back, that is:
       // clientException is of type CosXmlClientException? and serviceException is of type CosXmlServiceException?
       @Override
       public void onFail(CosXmlRequest cosXmlRequest,
                          @Nullable CosXmlClientException clientException,
                          @Nullable CosXmlServiceException serviceException) {
           if (clientException != null) {
               clientException.printStackTrace();
           } else {
               serviceException.printStackTrace();
           }
       }
    });
    
    Note:

    For more samples, please visit GitHub.

    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support