Skip to content

Commit 95773a6

Browse files
authored
Merge pull request #260 from 563750789/master
5.6.255.1 version release
2 parents c753fd4 + f35cc36 commit 95773a6

File tree

94 files changed

+3886
-215
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+3886
-215
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55
<groupId>com.qcloud</groupId>
66
<artifactId>cos_api</artifactId>
7-
<version>5.6.251</version>
7+
<version>5.6.255.1</version>
88
<packaging>jar</packaging>
99
<name>cos-java-sdk</name>
1010
<description>java sdk for qcloud cos</description>

src/main/java/com/qcloud/cos/COS.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3044,6 +3044,8 @@ SelectObjectContentResult selectObjectContent(SelectObjectContentRequest selectR
30443044
*/
30453045
ImageAuditingResponse imageAuditing(ImageAuditingRequest request);
30463046

3047+
CreateAuditingPictureJobResponse imageAuditingV2(ImageAuditingRequest customRequest);
3048+
30473049
/**
30483050
* CreateVideoAuditingJob 视频审核任务发起接口 https://cloud.tencent.com/document/product/460/46427
30493051
*/
@@ -3298,6 +3300,14 @@ SelectObjectContentResult selectObjectContent(SelectObjectContentRequest selectR
32983300
MediaTemplateResponseV2 createMediaTemplateV2(MediaTemplateRequestV2 request);
32993301

33003302
ImageOCRResponse imageOCR(ImageOCRRequest request);
3303+
3304+
TranslationResponse createTranslationJob(TranslationRequest translationRequest);
3305+
3306+
ImageQualityResponse AccessImageQulity(ImageQualityRequest request);
3307+
3308+
AIGCMetadataResponse getImageAIGCMetadata(String bucketName, String key);
3309+
3310+
AIGCMetadataResponse getMediaAIGCMetadata(String bucketName, String key);
33013311
}
33023312

33033313

src/main/java/com/qcloud/cos/COSClient.java

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4155,6 +4155,7 @@ public MediaListQueueResponse describeMediaQueues(MediaQueueRequest req) {
41554155
addParameterIfNotNull(request, "queueIds", req.getQueueId());
41564156
addParameterIfNotNull(request, "state", req.getState());
41574157
addParameterIfNotNull(request, "pageNumber", req.getPageNumber());
4158+
addParameterIfNotNull(request, "category", req.getCategory());
41584159
addParameterIfNotNull(request, "pageSize", req.getPageSize());
41594160
return invoke(request, new Unmarshallers.ListQueueUnmarshaller());
41604161
}
@@ -4269,7 +4270,7 @@ public MediaWorkflowListResponse describeWorkflow(MediaWorkflowListRequest reque
42694270
public MediaWorkflowExecutionResponse describeWorkflowExecution(MediaWorkflowListRequest request) {
42704271
this.checkCIRequestCommon(request);
42714272
CosHttpRequest<MediaWorkflowListRequest> httpRequest = this.createRequest(request.getBucketName(), "/workflowexecution/" + request.getRunId(), request, HttpMethodName.GET);
4272-
return this.invoke(httpRequest, new Unmarshallers.WorkflowExecutionUnmarshaller());
4273+
return this.invoke(httpRequest, new Unmarshallers.CICommonUnmarshaller<MediaWorkflowExecutionResponse>(MediaWorkflowExecutionResponse.class));
42734274
}
42744275

42754276
@Override
@@ -4404,6 +4405,24 @@ public ImageAuditingResponse imageAuditing(ImageAuditingRequest imageAuditingReq
44044405
return invoke(request, new Unmarshallers.ImageAuditingUnmarshaller());
44054406
}
44064407

4408+
@Override
4409+
public CreateAuditingPictureJobResponse imageAuditingV2(ImageAuditingRequest customRequest) {
4410+
CosHttpRequest<ImageAuditingRequest> request = createRequest(customRequest.getBucketName(), "/" + customRequest.getObjectKey(), customRequest , HttpMethodName.GET);
4411+
request.addParameter("ci-process", "sensitive-content-recognition");
4412+
addParameterIfNotNull(request, "biz-type", customRequest.getBizType());
4413+
addParameterIfNotNull(request, "detect-url", customRequest.getDetectUrl());
4414+
addParameterIfNotNull(request, "interval", customRequest.getInterval());
4415+
addParameterIfNotNull(request, "max-frames", customRequest.getMaxFrames());
4416+
addParameterIfNotNull(request, "large-image-detect", customRequest.getLargeImageDetect());
4417+
addParameterIfNotNull(request, "dataid", customRequest.getDataId());
4418+
addParameterIfNotNull(request, "async", customRequest.getAsync());
4419+
addParameterIfNotNull(request, "callback", customRequest.getCallback());
4420+
4421+
return invoke(request, new Unmarshallers.CICommonUnmarshaller<CreateAuditingPictureJobResponse>(CreateAuditingPictureJobResponse.class));
4422+
}
4423+
4424+
4425+
44074426
@Override
44084427
public VideoAuditingResponse createVideoAuditingJob(VideoAuditingRequest videoAuditingRequest) {
44094428
this.checkCIRequestCommon(videoAuditingRequest);
@@ -5757,5 +5776,49 @@ private void preflightObj(UploadPartRequest uploadPartRequest) throws CosClientE
57575776
invoke(request, voidCosResponseHandler);
57585777
}
57595778
}
5779+
5780+
@Override
5781+
public TranslationResponse createTranslationJob(TranslationRequest req) {
5782+
CosHttpRequest<TranslationRequest> request = createRequest(req.getBucketName(), "/jobs", req, HttpMethodName.POST);
5783+
5784+
this.setContent(request, CIAuditingXmlFactoryV2.convertToXmlByteArray(req), "application/xml", false);
5785+
5786+
return invoke(request, new Unmarshallers.CICommonUnmarshaller<TranslationResponse>(TranslationResponse.class));
5787+
}
5788+
5789+
@Override
5790+
public ImageQualityResponse AccessImageQulity(ImageQualityRequest req) {
5791+
CosHttpRequest<ImageQualityRequest> request = createRequest(req.getBucketName(), req.getObjectKey(), req, HttpMethodName.GET);
5792+
5793+
addParameterIfNotNull(request, "ci-process", "AssessQuality");
5794+
5795+
request.addHeader("Accept", "application/xml");
5796+
5797+
return invoke(request, new Unmarshallers.CICommonUnmarshaller<ImageQualityResponse>(ImageQualityResponse.class));
5798+
}
5799+
5800+
@Override
5801+
public AIGCMetadataResponse getImageAIGCMetadata(String bucketName, String key) {
5802+
rejectNull(bucketName, "The bucket name parameter must be specified when getting AIGC metadata");
5803+
rejectNull(key, "The key parameter must be specified when getting AIGC metadata");
5804+
5805+
GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key);
5806+
CosHttpRequest<GetObjectRequest> request = createRequest(bucketName, key, getObjectRequest, HttpMethodName.GET);
5807+
request.addParameter("ci-process", "ImageAIGCMetadata");
5808+
5809+
return invoke(request, new Unmarshallers.AigcMetadataUnmarshaller());
5810+
}
5811+
5812+
@Override
5813+
public AIGCMetadataResponse getMediaAIGCMetadata(String bucketName, String key) {
5814+
rejectNull(bucketName, "The bucket name parameter must be specified when getting AIGC metadata");
5815+
rejectNull(key, "The key parameter must be specified when getting AIGC metadata");
5816+
5817+
GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key);
5818+
CosHttpRequest<GetObjectRequest> request = createRequest(bucketName, key, getObjectRequest, HttpMethodName.GET);
5819+
request.addParameter("ci-process", "MediaAIGCMetadata");
5820+
5821+
return invoke(request, new Unmarshallers.AigcMetadataUnmarshaller());
5822+
}
57605823
}
57615824

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.qcloud.cos.demo.ci;
2+
3+
import com.qcloud.cos.COSClient;
4+
import com.qcloud.cos.model.ciModel.job.AIGCMetadataResponse;
5+
6+
public class AIGCMetadataDemo {
7+
8+
public static void main(String[] args) {
9+
// 初始化客户端
10+
COSClient cosClient = ClientUtils.getTestClient();
11+
12+
getImageAIGCMetadata(cosClient);
13+
}
14+
15+
/**
16+
* getImageAIGCMetadata 可以获取 JPG/JPEG、PNG、AVIF 格式图片的 AIGC 元数据标识信息。
17+
* 该接口属于 GET 请求。
18+
*/
19+
public static void getImageAIGCMetadata(COSClient client) {
20+
String bucketName = "demoBuck-1251704708";
21+
String key = "test.jpg";
22+
23+
AIGCMetadataResponse response = client.getImageAIGCMetadata(bucketName, key);
24+
25+
System.out.println(response);
26+
}
27+
28+
/**
29+
* 本接口获取视频、音频中的 AIGC 元数据标识信息。
30+
* 本接口属于 GET 请求。
31+
*/
32+
public static void getMediaAIGCMetadata(COSClient client) {
33+
String bucketName = "demoBuck-1251704708";
34+
String key = "test.mp4";
35+
36+
AIGCMetadataResponse response = client.getMediaAIGCMetadata(bucketName, key);
37+
38+
System.out.println(response);
39+
}
40+
}

src/main/java/com/qcloud/cos/demo/ci/DocJobDemo.java

Lines changed: 44 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,7 @@
22

33
import com.qcloud.cos.COSClient;
44
import com.qcloud.cos.model.ciModel.common.MediaOutputObject;
5-
import com.qcloud.cos.model.ciModel.job.CallBackKafkaConfig;
6-
import com.qcloud.cos.model.ciModel.job.CallBackMqConfig;
7-
import com.qcloud.cos.model.ciModel.job.DocHtmlRequest;
8-
import com.qcloud.cos.model.ciModel.job.DocJobDetail;
9-
import com.qcloud.cos.model.ciModel.job.DocJobListRequest;
10-
import com.qcloud.cos.model.ciModel.job.DocJobListResponse;
11-
import com.qcloud.cos.model.ciModel.job.DocJobObject;
12-
import com.qcloud.cos.model.ciModel.job.DocJobRequest;
13-
import com.qcloud.cos.model.ciModel.job.DocJobResponse;
14-
import com.qcloud.cos.model.ciModel.job.DocProcessObject;
5+
import com.qcloud.cos.model.ciModel.job.*;
156

167
import java.net.URISyntaxException;
178

@@ -37,30 +28,61 @@ public static void createDocJobs(COSClient client) {
3728
//1.创建任务请求对象
3829
DocJobRequest request = new DocJobRequest();
3930
//2.添加请求参数 参数详情请见api接口文档
40-
request.setBucketName("examplebucket-1250000000");
31+
request.setBucketName("demo-1234567890");
4132
DocJobObject docJobObject = request.getDocJobObject();
4233
docJobObject.setTag("DocProcess");
43-
docJobObject.getInput().setObject("demo.docx");
34+
docJobObject.getInput().setObject("1.docx");
4435
DocProcessObject docProcessObject = docJobObject.getOperation().getDocProcessObject();
4536
docProcessObject.setQuality("100");
4637
docProcessObject.setZoom("100");
4738
docProcessObject.setStartPage("1");
4839
docProcessObject.setEndPage("3");
49-
docProcessObject.setTgtType("png");
40+
docProcessObject.setTgtType("pdf");
5041
docProcessObject.setDocPassword("123");
42+
DocWatermark docWatermark = docProcessObject.getDocWatermark();
43+
docWatermark.setType("1");
44+
docWatermark.setImage("https://markjrzhang-1251704708.cos.ap-chongqing.myqcloud.com/case/xhs.png");
45+
docWatermark.setDx("10");
46+
docWatermark.setDy("10");
47+
5148
MediaOutputObject output = docJobObject.getOperation().getOutput();
52-
output.setRegion("ap-chongqing");
53-
output.setBucket("examplebucket-1250000000");
54-
output.setObject("mark/pic-${Page}.jpg");
49+
output.setRegion("ap-singapore");
50+
output.setBucket("demo-1234567890");
51+
output.setObject("mark/test-${Page}.pdf");
5552

5653
docJobObject.getOperation().setUserData("user-data");
5754
docJobObject.setCallBackFormat("json");
58-
docJobObject.setCallBack("www.callback.com");
55+
// docJobObject.setCallBack("www.callback.com");
5956
//3.调用接口,获取任务响应对象
6057
DocJobResponse docProcessJobs = client.createDocProcessJobs(request);
6158
System.out.println(docProcessJobs);
6259
}
6360

61+
public static void createWatermarkDocJobs(COSClient client) {
62+
//1.创建任务请求对象
63+
DocJobRequest request = new DocJobRequest();
64+
//2.添加请求参数 参数详情请见api接口文档
65+
request.setBucketName("demo-1234567890");
66+
DocJobObject docJobObject = request.getDocJobObject();
67+
docJobObject.setTag("DocWatermark");
68+
docJobObject.getInput().setObject("1.docx");
69+
DocWatermark docWatermark = docJobObject.getOperation().getDocWatermarkObject();
70+
docWatermark.setType("1");
71+
docWatermark.setImage("https://markjrzhang-1251704708.cos.ap-chongqing.myqcloud.com/case/xhs.png");
72+
docWatermark.setDx("10");
73+
docWatermark.setDy("10");
74+
75+
MediaOutputObject output = docJobObject.getOperation().getOutput();
76+
output.setRegion("ap-singapore");
77+
output.setBucket("demo-1234567890");
78+
output.setObject("result/watermarked.docx");
79+
80+
docJobObject.getOperation().setUserData("testdata");
81+
docJobObject.setCallBackFormat("json");
82+
// docJobObject.setCallBack("www.callback.com");
83+
//3.调用接口,获取任务响应对象
84+
DocJobResponse docProcessJobs = client.createDocProcessJobs(request);
85+
}
6486
/**
6587
* createDocJobsWithKafkaCallback 接口用于创建异步文档预览任务(包含kafka回调配置)。
6688
* 将文档转为指定类型(jpg、png、pdf)并保存至指定的cos路径下
@@ -72,7 +94,7 @@ public static void createDocJobsWithKafkaCallback(COSClient client) {
7294
//1.创建任务请求对象
7395
DocJobRequest request = new DocJobRequest();
7496
//2.添加请求参数 参数详情请见api接口文档
75-
request.setBucketName("examplebucket-1250000000");
97+
request.setBucketName("demo-1234567890");
7698
DocJobObject docJobObject = request.getDocJobObject();
7799
docJobObject.setTag("DocProcess");
78100
docJobObject.getInput().setObject("demo.docx");
@@ -85,18 +107,12 @@ public static void createDocJobsWithKafkaCallback(COSClient client) {
85107
docProcessObject.setDocPassword("123");
86108
MediaOutputObject output = docJobObject.getOperation().getOutput();
87109
output.setRegion("ap-chongqing");
88-
output.setBucket("examplebucket-1250000000");
110+
output.setBucket("markjrzhang-1251704708");
89111
output.setObject("mark/pic-${Page}.jpg");
90112

91113
docJobObject.getOperation().setUserData("user-data");
92114
docJobObject.setCallBackFormat("json");
93115

94-
// docJobObject.setCallBackType("TDMQ");
95-
// CallBackMqConfig callBackMqConfig = docJobObject.getCallBackMqConfig();
96-
// callBackMqConfig.setMqRegion("sh");
97-
// callBackMqConfig.setMqName("name");
98-
// callBackMqConfig.setMqMode("Queue");
99-
100116
docJobObject.setCallBackType("Kafka");
101117
CallBackKafkaConfig callBackKafkaConfig = docJobObject.getCallBackKafkaConfig();
102118
callBackKafkaConfig.setRegion("ap-chongqing");
@@ -116,8 +132,8 @@ public static void describeDocProcessJob(COSClient client) {
116132
//1.创建任务请求对象
117133
DocJobRequest request = new DocJobRequest();
118134
//2.添加请求参数 参数详情请见api接口文档
119-
request.setBucketName("examplebucket-1250000000");
120-
request.setJobId("d75b6ea083df711eb8d09476dfb8*****");
135+
request.setBucketName("demo-1234567890");
136+
request.setJobId("d16a7e4f284ad11f0a3499b983ea*****");
121137
//3.调用接口,获取任务响应对象
122138
DocJobResponse docJobResponse = client.describeDocProcessJob(request);
123139
System.out.println(docJobResponse);
@@ -132,7 +148,7 @@ public static void describeDocProcessJobs(COSClient client) {
132148
//1.创建任务请求对象
133149
DocJobListRequest request = new DocJobListRequest();
134150
//2.添加请求参数 参数详情请见api接口文档
135-
request.setBucketName("examplebucket-1250000000");
151+
request.setBucketName("demo-1234567890");
136152
request.setTag("DocProcess");
137153
request.setStartCreationTime("2020-12-10T16:20:07+0800");
138154
//3.调用接口,获取任务响应对象

src/main/java/com/qcloud/cos/demo/ci/FileProcessJobDemo.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@ public static void createFileUncompressJob(COSClient client) {
6969
FileUnCompressConfig fileUnCompressConfig = request.getOperation().getFileUnCompressConfig();
7070
fileUnCompressConfig.setPrefix("output/");
7171
fileUnCompressConfig.setPrefixReplaced("1");
72+
fileUnCompressConfig.setUnCompressKey("demo");
73+
fileUnCompressConfig.setListingFile(true);
7274
MediaOutputObject output = request.getOperation().getOutput();
7375
output.setBucket("demo-1234567890");
7476
output.setRegion("ap-chongqing");

src/main/java/com/qcloud/cos/demo/ci/ImageAuditingDemo.java

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.qcloud.cos.model.ciModel.auditing.BatchImageAuditingRequest;
77
import com.qcloud.cos.model.ciModel.auditing.BatchImageAuditingResponse;
88
import com.qcloud.cos.model.ciModel.auditing.BatchImageJobDetail;
9+
import com.qcloud.cos.model.ciModel.auditing.CreateAuditingPictureJobResponse;
910
import com.qcloud.cos.model.ciModel.auditing.DescribeImageAuditingRequest;
1011
import com.qcloud.cos.model.ciModel.auditing.ImageAuditingRequest;
1112
import com.qcloud.cos.model.ciModel.auditing.ImageAuditingResponse;
@@ -48,9 +49,34 @@ public static void imageAuditing(COSClient client) {
4849
// request.setAsync("1");
4950
//3.调用接口,获取任务响应对象
5051
ImageAuditingResponse response = client.imageAuditing(request);
51-
System.out.println(Jackson.toJsonString(response));
5252
//4调用工具类,获取各审核类型详情集合 (也可自行根据业务解析)
53-
List<AuditingInfo> imageInfoList = AuditingResultUtil.getImageInfoList(response);
53+
System.out.println(response);
54+
}
55+
56+
/**
57+
* createImageAuditingJob 接口用于创建图片审核任务。
58+
*
59+
* @param client
60+
*/
61+
public static void imageAuditingV2(COSClient client) {
62+
//1.创建任务请求对象
63+
ImageAuditingRequest request = new ImageAuditingRequest();
64+
//2.添加请求参数 参数详情请见api接口文档
65+
//2.1设置请求bucket
66+
request.setBucketName("demobucket-1234567890");
67+
//2.2设置审核类型 不设置值时表示审核所有类型
68+
//request.setDetectType("porn");
69+
//2.3设置bucket中的图片位置
70+
request.setObjectKey("ceshi.png");
71+
//2.4设置图片压缩参数 0(不压缩),1(压缩)默认为零
72+
request.setLargeImageDetect("1");
73+
// 2.5设置审核策略 空为默认策略
74+
request.setBizType("a34415d405a001ef15f4855f46e*****");
75+
//2.6 是否设置异步审核 默认为0 同步返回结果 1为异步任务
76+
request.setAsync("1");
77+
//3.调用接口,获取任务响应对象
78+
CreateAuditingPictureJobResponse response = client.imageAuditingV2(request);
79+
System.out.println(Jackson.toJsonString(response));
5480
System.out.println(response);
5581
}
5682

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package com.qcloud.cos.demo.ci;
2+
3+
import com.qcloud.cos.COSClient;
4+
import com.qcloud.cos.model.ciModel.job.ImageQualityRequest;
5+
import com.qcloud.cos.model.ciModel.job.ImageQualityResponse;
6+
7+
/*
8+
* 图片质量评估相关demo https://cloud.tencent.com/document/product/460/63228
9+
*/
10+
public class ImageQualityDemo {
11+
public static void main(String[] args) {
12+
// 1. 初始化客户端
13+
COSClient client = ClientUtils.getTestClient();
14+
assessImageQuality(client);
15+
}
16+
17+
public static void assessImageQuality(COSClient client) {
18+
// 1. 创建请求对象
19+
ImageQualityRequest request = new ImageQualityRequest();
20+
21+
// 2. 设置请求参数
22+
request.setBucketName("demobucket-1251704708");
23+
request.setObjectKey("demo.jpeg");
24+
25+
// 3. 发起GET请求,返回结果
26+
ImageQualityResponse response = client.AccessImageQulity(request);
27+
System.out.println(response.getRequestId());
28+
}
29+
}

0 commit comments

Comments
 (0)