Пример #1
0
        /// <summary>
        /// 获取桶存储类型
        /// </summary>
        /// <param name="bucketName"></param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        /// <remarks>
        /// 标准存储(StorageClassEnum.Standard) 标准存储拥有低访问时延和较高的吞吐量,适用于有大量热点对象(平均一个月多次)或小对象(<1MB),且需要频繁访问数据的业务场景。
        /// 低频访问存储(StorageClassEnum.Warm) 低频访问存储适用于不频繁访问(平均一年少于12次)但在需要时也要求能够快速访问数据的业务场景。
        /// 归档存储(StorageClassEnum.Cold) 归档存储适用于很少访问(平均一年访问一次)数据的业务场景。
        /// </remarks>
        public Task <StorageClassEnum> GetBucketStoragePolicyAsync(string bucketName)
        {
            GetBucketStoragePolicyRequest request = new GetBucketStoragePolicyRequest()
            {
                BucketName = bucketName,
            };
            GetBucketStoragePolicyResponse response = _client.GetBucketStoragePolicy(request);

            if (response.StatusCode != HttpStatusCode.OK || response.StorageClass == null)
            {
                throw new Exception($"Get bucket '{bucketName}' storage policy failed. response code is {response.StatusCode}, response data: {JsonUtil.SerializeObject(response)}");
            }
            return(Task.FromResult(response.StorageClass.Value));
        }
Пример #2
0
        static void GetBucketStoragePolicy()
        {
            try
            {
                GetBucketStoragePolicyRequest request = new GetBucketStoragePolicyRequest()
                {
                    BucketName = bucketName,
                };
                GetBucketStoragePolicyResponse response = client.GetBucketStoragePolicy(request);

                Console.WriteLine("Get bucket storage policy response: {0}", response.StatusCode);
                Console.WriteLine("Bucket DefaultStorageClass: {0}", response.StorageClass.ToString());
            }
            catch (ObsException ex)
            {
                Console.WriteLine("Exception errorcode: {0}, when get bucket storage policy.", ex.ErrorCode);
                Console.WriteLine("Exception errormessage: {0}", ex.ErrorMessage);
            }
        }
Пример #3
0
 /// <summary>
 /// 获取桶的存储策略。
 /// </summary>
 /// <param name="request">获取桶的存储策略的请求参数。</param>
 /// <returns>获取桶的存储策略响应结果。</returns>
 public GetBucketStoragePolicyResponse GetBucketStoragePolicy(GetBucketStoragePolicyRequest request)
 {
     return(DoRequest <GetBucketStoragePolicyRequest, GetBucketStoragePolicyResponse>(request));
 }
 /// <summary>
 /// Start the asynchronous request for obtaining bucket storage policies.
 /// </summary>
 /// <param name="request">Parameters in a request for obtaining bucket storage policies</param>
 /// <param name="callback">Asynchronous request callback function</param>
 /// <param name="state">Asynchronous request status object</param>
 /// <returns>Response to the asynchronous request</returns>
 public IAsyncResult BeginGetBucketStoragePolicy(GetBucketStoragePolicyRequest request, AsyncCallback callback, object state)
 {
     return(BeginDoRequest <GetBucketStoragePolicyRequest>(request, callback, state));
 }