Skip to content

Commit 861607d

Browse files
author
garenwang
committed
# 6.0.4
1 parent 7351ebd commit 861607d

24 files changed

+375
-128
lines changed

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1+
# 6.0.4
2+
3+
14
# 6.0.3
5+
26
1.quic修复&&修复beacon被初始化多次导致的crash。2.修改信号量crash。
37

48
# 6.0.2
@@ -10,6 +14,9 @@
1014
# 6.0.0
1115

1216

17+
# 5.9.9
18+
19+
1320
# 5.9.8
1421

1522

QCloudCOSXML.podspec

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Pod::Spec.new do |s|
22
s.name = "QCloudCOSXML"
33

44

5-
s.version = "6.0.3"
5+
s.version = "6.0.4"
66

77

88
s.summary = "QCloudCOSXML 腾讯云iOS-SDK组件"
@@ -22,15 +22,15 @@ s.version = "6.0.3"
2222
s.subspec 'Default' do |default|
2323
default.source_files = 'QCloudCOSXML/Classes/**/*','QCloudCOSXML/Classes/QCloudCOSXML/*'
2424

25-
default.dependency "QCloudCore",'6.0.3'
25+
default.dependency "QCloudCore",'6.0.4'
2626
end
2727
s.subspec 'Slim' do |slim|
2828
slim.source_files = 'QCloudCOSXML/Classes/**/*','QCloudCOSXML/Classes/QCloudCOSXML/*'
29-
slim.dependency "QCloudCore/WithoutMTA",'6.0.3'
29+
slim.dependency "QCloudCore/WithoutMTA",'6.0.4'
3030
end
3131
s.subspec 'Transfer' do |transfer|
3232
transfer.source_files = 'QCloudCOSXML/Classes/*','QCloudCOSXML/Classes/Transfer/**/*','QCloudCOSXML/Classes/Base/**/*'
33-
transfer.dependency "QCloudCore/WithoutMTA",'6.0.3'
33+
transfer.dependency "QCloudCore/WithoutMTA",'6.0.4'
3434

3535
end
3636

QCloudCOSXML/Classes/Base/QCloudCOSXMLEndPoint.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
@property (nonatomic, copy) QCloudRegion regionName;
2323
@property (nonatomic, assign) BOOL isPrefixURL;
2424
/**
25-
服务的基础名称, 默认值为: myqcloud.com
25+
服务的基础名称, 默认值为: myqcloud.com
2626
*/
2727
@property (nonatomic, copy) QCloudServiceName serviceName;
2828

@@ -32,6 +32,11 @@
3232
指定该参数为testsuffix,该存储桶host为 http://bucketname.testsuffix.****
3333
*/
3434
@property (nonatomic, copy) NSString *suffix;
35+
///**
36+
// 是否切换到旧域名
37+
// */
38+
//@property (nonatomic, assign) BOOL enableOldDomain;
39+
3540
@end
3641

3742
#pragma clang diagnostic pop

QCloudCOSXML/Classes/Base/QCloudCOSXMLEndPoint.m

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,15 @@ - (instancetype)init {
2020
return self;
2121
}
2222

23+
//-(void)setEnableOldDomain:(BOOL)enableOldDomain{
24+
// _enableOldDomain = enableOldDomain;
25+
// if(_enableOldDomain){
26+
// _serviceName = @"myqcloud.com";
27+
//
28+
// }else{
29+
// _serviceName = @"tencentcos.cn";
30+
// }
31+
//}
2332
- (NSString *)formattedBucket:(NSString *)bucket withAPPID:(NSString *)APPID {
2433
NSInteger subfixLength = APPID.length + 1;
2534
if (bucket.length <= subfixLength) {
@@ -109,6 +118,7 @@ - (id)copyWithZone:(NSZone *)zone {
109118
endpoint.serviceName = self.serviceName;
110119
endpoint.isPrefixURL = self.isPrefixURL;
111120
endpoint.suffix = self.suffix;
121+
// endpoint.enableOldDomain = self.enableOldDomain;
112122
return endpoint;
113123
}
114124
@end

QCloudCOSXML/Classes/Manager/QCloudCOSXMLService+Manager.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
@class QCloudPutBucketCORSRequest;
2727
@class QCloudPutBucketLifecycleRequest;
2828
@class QCloudDeleteBucketRequest;
29+
@class QCloudDeleteObjectTaggingRequest;
2930
@class QCloudDeleteBucketCORSRequest;
3031
@class QCloudDeleteBucketLifeCycleRequest;
3132
@class QCloudHeadBucketRequest;
@@ -121,6 +122,7 @@ NS_ASSUME_NONNULL_BEGIN
121122
- (void)GetBucket:(QCloudGetBucketRequest *)request;
122123
- (void)DeleteObject:(QCloudDeleteObjectRequest *)request;
123124
- (void)GetObjectTagging:(QCloudGetObjectTaggingRequest *)request;
125+
- (void)DeleteObjectTagging:(QCloudDeleteObjectTaggingRequest *)request;
124126
- (void)PuObjectTagging:(QCloudPutBucketTaggingRequest *)request;
125127
- (void)GetObjectACL:(QCloudGetObjectACLRequest *)request;
126128
- (void)PutObjectACL:(QCloudPutObjectACLRequest *)request;

QCloudCOSXML/Classes/Manager/QCloudCOSXMLService+Manager.m

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
#import "QCloudGetVideoRecognitionRequest.h"
4949
#import "QCloudPostVideoRecognitionRequest.h"
5050
#import "QCloudAppendObjectRequest.h"
51+
#import "QCloudDeleteObjectTaggingRequest.h"
5152

5253
@implementation QCloudCOSXMLService (Manager)
5354

@@ -62,6 +63,10 @@ - (void)GetObjectTagging:(QCloudGetObjectTaggingRequest *)request {
6263
[super performRequest:request];
6364
}
6465

66+
- (void)DeleteObjectTagging:(QCloudDeleteObjectTaggingRequest *)request {
67+
[super performRequest:request];
68+
}
69+
6570
- (void)PuObjectTagging:(QCloudPutBucketTaggingRequest *)request {
6671
[super performRequest:request];
6772
}
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
//
2+
// GetObjectTagging.h
3+
// GetObjectTagging
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+
// ___ ___ _ ____ ___ ___ ___ | |_ ___ _ __ __| | _____ _____| | ___ _ __ ___ _
21+
// __ ___
22+
// / __|/ _ \ '__\ \ / / |/ __/ _ \ | _/ _ \| '__| / _` |/ _ \ \ / / _ \ |/ _ \| '_ \ / _ \
23+
// '__/ __|
24+
// \__ \ __/ | \ V /| | (_| __/ | || (_) | | | (_| | __/\ V / __/ | (_) | |_) | __/
25+
// | \__
26+
// |___/\___|_| \_/ |_|\___\___| |_| \___/|_| \__,_|\___| \_/ \___|_|\___/| .__/
27+
// \___|_| |___/
28+
// ______ ______ ______ ______ ______ ______ ______ ______ | |
29+
// |______|______|______|______|______|______|______|______| |_|
30+
//
31+
32+
#import <Foundation/Foundation.h>
33+
#import <QCloudCore/QCloudCore.h>
34+
#import "QCloudTagging.h"
35+
NS_ASSUME_NONNULL_BEGIN
36+
37+
/**
38+
删除指定对象下已有的对象标签
39+
40+
### 功能说明
41+
42+
DELETE Object tagging 接口用于删除指定对象下已有的对象标签。
43+
44+
请查看https://cloud.tencent.com/document/product/436/42999
45+
46+
### 示例
47+
48+
@code
49+
50+
QCloudDeleteObjectTaggingRequest *request = [QCloudDeleteObjectTaggingRequest new];
51+
52+
// 文件名
53+
request.object = @"test.png";
54+
55+
// 存储桶名称,格式为 BucketName-APPID
56+
getReq.bucket = @"examplebucket-1250000000";
57+
58+
request.versionId = @"versionId";
59+
60+
[request setFinishBlock:^(id * result, NSError * error) {
61+
62+
if(!error){
63+
// 删除成功
64+
}else{
65+
// 删除失败
66+
}
67+
68+
}];
69+
[[QCloudCOSXMLService defaultCOSXML] DeleteObjectTagging:request];
70+
71+
*/
72+
73+
@interface QCloudDeleteObjectTaggingRequest : QCloudBizHTTPRequest
74+
75+
/**
76+
当启用版本控制时,指定要操作的对象版本 ID,如不指定则删除最新版本对象的标签
77+
*/
78+
@property (strong, nonatomic) NSString *versionId;
79+
/**
80+
对象 名称
81+
*/
82+
@property (strong, nonatomic) NSString *object;
83+
84+
/**
85+
存储桶名
86+
*/
87+
@property (strong, nonatomic) NSString *bucket;
88+
89+
- (void)setFinishBlock:(void (^_Nullable)(id _Nullable result, NSError *_Nullable error))QCloudRequestFinishBlock;
90+
@end
91+
NS_ASSUME_NONNULL_END
Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
//
2+
// GetObjectTagging.m
3+
// GetObjectTagging
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+
// ___ ___ _ ____ ___ ___ ___ | |_ ___ _ __ __| | _____ _____| | ___ _ __ ___ _
21+
// __ ___
22+
// / __|/ _ \ '__\ \ / / |/ __/ _ \ | _/ _ \| '__| / _` |/ _ \ \ / / _ \ |/ _ \| '_ \ / _ \
23+
// '__/ __|
24+
// \__ \ __/ | \ V /| | (_| __/ | || (_) | | | (_| | __/\ V / __/ | (_) | |_) | __/
25+
// | \__
26+
// |___/\___|_| \_/ |_|\___\___| |_| \___/|_| \__,_|\___| \_/ \___|_|\___/| .__/
27+
// \___|_| |___/
28+
// ______ ______ ______ ______ ______ ______ ______ ______ | |
29+
// |______|______|______|______|______|______|______|______| |_|
30+
//
31+
32+
#import "QCloudDeleteObjectTaggingRequest.h"
33+
#import <QCloudCore/QCloudSignatureFields.h>
34+
#import <QCloudCore/QCloudCore.h>
35+
#import <QCloudCore/QCloudServiceConfiguration_Private.h>
36+
#import "QCloudTagging.h"
37+
38+
NS_ASSUME_NONNULL_BEGIN
39+
@implementation QCloudDeleteObjectTaggingRequest
40+
- (void)dealloc {
41+
}
42+
- (instancetype)init {
43+
self = [super init];
44+
if (!self) {
45+
return nil;
46+
}
47+
return self;
48+
}
49+
- (void)configureReuqestSerializer:(QCloudRequestSerializer *)requestSerializer responseSerializer:(QCloudResponseSerializer *)responseSerializer {
50+
NSArray *customRequestSerilizers = @[
51+
QCloudURLFuseURIMethodASURLParamters,
52+
];
53+
54+
NSArray *responseSerializers = @[
55+
QCloudAcceptRespnseCodeBlock([NSSet setWithObjects:@(200), @(201), @(202), @(203), @(204), @(205), @(206), @(207), @(208), @(226), nil], nil),
56+
QCloudResponseXMLSerializerBlock,
57+
];
58+
[requestSerializer setSerializerBlocks:customRequestSerilizers];
59+
[responseSerializer setSerializerBlocks:responseSerializers];
60+
61+
requestSerializer.HTTPMethod = @"delete";
62+
}
63+
64+
- (BOOL)buildRequestData:(NSError *__autoreleasing *)error {
65+
if (![super buildRequestData:error]) {
66+
return NO;
67+
}
68+
if (!self.object || ([self.object isKindOfClass:NSString.class] && ((NSString *)self.object).length == 0)) {
69+
if (error != NULL) {
70+
*error = [NSError
71+
qcloud_errorWithCode:QCloudNetworkErrorCodeParamterInvalid
72+
message:[NSString stringWithFormat:
73+
@"InvalidArgument:paramter[object] is invalid (nil), it must have some value. please check it"]];
74+
return NO;
75+
}
76+
}
77+
78+
if (!self.bucket || ([self.bucket isKindOfClass:NSString.class] && ((NSString *)self.bucket).length == 0)) {
79+
if (error != NULL) {
80+
*error = [NSError
81+
qcloud_errorWithCode:QCloudNetworkErrorCodeParamterInvalid
82+
message:[NSString stringWithFormat:
83+
@"InvalidArgument:paramter[bucket] is invalid (nil), it must have some value. please check it"]];
84+
return NO;
85+
}
86+
}
87+
88+
89+
NSURL *__serverURL = [self.runOnService.configuration.endpoint serverURLWithBucket:self.bucket
90+
appID:self.runOnService.configuration.appID
91+
regionName:self.regionName];
92+
self.requestData.serverURL = __serverURL.absoluteString;
93+
[self.requestData setValue:__serverURL.host forHTTPHeaderField:@"Host"];
94+
self.requestData.URIMethod = @"tagging";
95+
[self.requestData setQueryStringParamter:self.versionId withKey:@"VersionId"];
96+
NSMutableArray *__pathComponents = [NSMutableArray arrayWithArray:self.requestData.URIComponents];
97+
if (self.object)
98+
[__pathComponents addObject:self.object];
99+
self.requestData.URIComponents = __pathComponents;
100+
return YES;
101+
}
102+
- (void)setFinishBlock:(void (^_Nullable)(id _Nullable result, NSError *_Nullable error))QCloudRequestFinishBlock {
103+
[super setFinishBlock:QCloudRequestFinishBlock];
104+
}
105+
106+
- (QCloudSignatureFields *)signatureFields {
107+
QCloudSignatureFields *fileds = [QCloudSignatureFields new];
108+
109+
return fileds;
110+
}
111+
112+
@end
113+
NS_ASSUME_NONNULL_END

QCloudCOSXML/Classes/Manager/request/QCloudGetServiceRequest+Custom.m

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,13 @@
3030
//
3131

3232
#import "QCloudGetServiceRequest+Custom.h"
33-
33+
#import "QCloudCOSXMLEndPoint.h"
3434
@implementation QCloudGetServiceRequest (Custom)
3535
- (BOOL)customBuildRequestData:(NSError *__autoreleasing *)error {
3636
if (![super customBuildRequestData:error]) {
3737
return NO;
3838
}
39+
3940
NSString *scheme = self.runOnService.configuration.endpoint.useHTTPS ? @"https" : @"http";
4041
self.requestData.serverURL = [NSString stringWithFormat:@"%@://service.cos.myqcloud.com", scheme];
4142
if (![self.runOnService.configuration.endpoint.serviceName isEqualToString:@"myqcloud.com"]) {

QCloudCOSXML/Classes/QCloudCOSXML/QCloudCOSXML.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104
#import "QCloudGetRecognitionObjectResult.h"
105105
#import "QCloudPutObjectTaggingRequest.h"
106106
#import "QCloudGetObjectTaggingRequest.h"
107+
#import "QCloudDeleteObjectTaggingRequest.h"
107108
#import "QCloudPutBucketIntelligentTieringRequest.h"
108109
#import "QCloudGetBucketIntelligentTieringRequest.h"
109110
#import "QCloudGetVideoRecognitionRequest.h"

0 commit comments

Comments
 (0)