QCloudPutBucketVersioningRequest.h 5.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. //
  2. // PutBucketVersioning.h
  3. // PutBucketVersioning
  4. //
  5. // Created by tencent
  6. // Copyright (c) 2015年 tencent. All rights reserved.
  7. //
  8. // ██████╗ ██████╗██╗ ██████╗ ██╗ ██╗██████╗ ████████╗███████╗██████╗ ███╗ ███╗██╗███╗ ██╗ █████╗ ██╗ ██╗ █████╗ ██████╗
  9. // ██╔═══██╗██╔════╝██║ ██╔═══██╗██║ ██║██╔══██╗ ╚══██╔══╝██╔════╝██╔══██╗████╗ ████║██║████╗ ██║██╔══██╗██║ ██║ ██╔══██╗██╔══██╗
  10. // ██║ ██║██║ ██║ ██║ ██║██║ ██║██║ ██║ ██║ █████╗ ██████╔╝██╔████╔██║██║██╔██╗ ██║███████║██║ ██║ ███████║██████╔╝
  11. // ██║▄▄ ██║██║ ██║ ██║ ██║██║ ██║██║ ██║ ██║ ██╔══╝ ██╔══██╗██║╚██╔╝██║██║██║╚██╗██║██╔══██║██║ ██║ ██╔══██║██╔══██╗
  12. // ╚██████╔╝╚██████╗███████╗╚██████╔╝╚██████╔╝██████╔╝ ██║ ███████╗██║ ██║██║ ╚═╝ ██║██║██║ ╚████║██║ ██║███████╗ ███████╗██║ ██║██████╔╝
  13. // ╚══▀▀═╝ ╚═════╝╚══════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝╚══════╝ ╚══════╝╚═╝ ╚═╝╚═════╝
  14. //
  15. //
  16. // _ __ _ _
  17. // (_) / _| | | | |
  18. // ___ ___ _ ____ ___ ___ ___ | |_ ___ _ __ __| | _____ _____| | ___ _ __ ___ _ __ ___
  19. // / __|/ _ \ '__\ \ / / |/ __/ _ \ | _/ _ \| '__| / _` |/ _ \ \ / / _ \ |/ _ \| '_ \ / _ \ '__/ __|
  20. // \__ \ __/ | \ V /| | (_| __/ | || (_) | | | (_| | __/\ V / __/ | (_) | |_) | __/ | \__
  21. // |___/\___|_| \_/ |_|\___\___| |_| \___/|_| \__,_|\___| \_/ \___|_|\___/| .__/ \___|_| |___/
  22. // ______ ______ ______ ______ ______ ______ ______ ______ | |
  23. // |______|______|______|______|______|______|______|______| |_|
  24. //
  25. #import <Foundation/Foundation.h>
  26. #import <QCloudCore/QCloudCore.h>
  27. @class QCloudBucketVersioningConfiguration;
  28. NS_ASSUME_NONNULL_BEGIN
  29. /**
  30. 存储桶(Bucket)版本控制的方法.
  31. 版本管理功能一经打开,只能暂停,不能关闭. 通过版本控制,可以在一个 Bucket 中保留一个对象的多个版本. 版本控制可以防止意外覆盖和删除对象,以便检索早期版本的对象. 默认情况下,版本控制功能处于禁用状态,需要主动去启用或者暂停(Enabled 或者 Suspended).
  32. cos iOS SDK 中 Bucket 版本控制启用或者暂停的方法具体步骤如下:
  33. 1. 实例化 QCloudPutBucketVersioningRequest,填入需要的参数。
  34. 2. 调用 QCloudCOSXMLService 对象中的 PutBucketVersioning 方法发出请求。
  35. 3. 从回调的 finishBlock 中的 outputObject 获取具体内容。
  36. 示例:
  37. @code
  38. QCloudPutBucketVersioningRequest* request = [[QCloudPutBucketVersioningRequest alloc] init];
  39. request.bucket = bucketName;//存储桶名称(cos v5 的 bucket格式为:xxx-appid, 如 test-1253960454)
  40. QCloudBucketVersioningConfiguration* configuration = [[QCloudBucketVersioningConfiguration alloc] init];
  41. request.configuration = configuration;
  42. configuration.status = QCloudCOSBucketVersioningStatusEnabled;
  43. [request setFinishBlock:^(id outputObject, NSError* error) {
  44. //设置完成回调
  45. }];
  46. [[QCloudCOSXMLService defaultCOSXML] PutBucketVersioning:request];
  47. @endcode
  48. */
  49. @interface QCloudPutBucketVersioningRequest : QCloudBizHTTPRequest
  50. /**
  51. 存储桶名称
  52. */
  53. @property (strong, nonatomic) NSString *bucket;
  54. /**
  55. 版本控制的具体信息
  56. */
  57. @property (strong, nonatomic) QCloudBucketVersioningConfiguration *configuration;
  58. @end
  59. NS_ASSUME_NONNULL_END