9898import com .qcloud .cos .model .ciModel .image .ImageStyleResponse ;
9999import com .qcloud .cos .model .ciModel .image .OpenImageSearchRequest ;
100100import com .qcloud .cos .model .ciModel .job .*;
101- import com .qcloud .cos .model .ciModel .job .v2 .DNADbConfigsRequest ;
102- import com .qcloud .cos .model .ciModel .job .v2 .DNADbConfigsResponse ;
103- import com .qcloud .cos .model .ciModel .job .v2 .DNADbFilesRequest ;
104- import com .qcloud .cos .model .ciModel .job .v2 .DNADbFilesResponse ;
105- import com .qcloud .cos .model .ciModel .job .v2 .MediaJobResponseV2 ;
106- import com .qcloud .cos .model .ciModel .job .v2 .MediaJobsRequestV2 ;
101+ import com .qcloud .cos .model .ciModel .job .MediaJobObject ;
102+ import com .qcloud .cos .model .ciModel .job .v2 .*;
107103import com .qcloud .cos .model .ciModel .mediaInfo .MediaInfoRequest ;
108104import com .qcloud .cos .model .ciModel .mediaInfo .MediaInfoResponse ;
105+ import com .qcloud .cos .model .ciModel .metaInsight .CreateDatasetRequest ;
106+ import com .qcloud .cos .model .ciModel .metaInsight .CreateDatasetResponse ;
109107import com .qcloud .cos .model .ciModel .persistence .AIGameRecResponse ;
110108import com .qcloud .cos .model .ciModel .persistence .CIUploadResult ;
111109import com .qcloud .cos .model .ciModel .persistence .AIRecRequest ;
155153
156154import org .apache .commons .codec .DecoderException ;
157155import org .apache .http .client .methods .HttpRequestBase ;
158- import org .apache .http .client .utils .URIBuilder ;
159156import org .apache .http .entity .ContentType ;
160157import org .slf4j .Logger ;
161158import org .slf4j .LoggerFactory ;
@@ -2144,7 +2141,7 @@ public CopyObjectResult copyObject(CopyObjectRequest copyObjectRequest)
21442141 + " httpRequest: %s, retryIdx:%d, maxErrorRetry:%d" , cse .getMessage (), request ,
21452142 retryIndex , clientConfig .getMaxErrorRetryForCopyRequest ());
21462143 log .debug (errorMsg );
2147- if (retryIndex < clientConfig .getMaxErrorRetryForCopyRequest () && RetryUtils .ShouldRetryCopyRequest (cse )) {
2144+ if (retryIndex < clientConfig .getMaxErrorRetryForCopyRequest () && RetryUtils .shouldRetryCopyRequest (cse )) {
21482145 retryIndex ++;
21492146 continue ;
21502147 }
@@ -2261,7 +2258,7 @@ public CopyPartResult copyPart(CopyPartRequest copyPartRequest)
22612258 + " httpRequest: %s, retryIdx:%d, maxErrorRetry:%d" , cse .getMessage (), request ,
22622259 retryIndex , clientConfig .getMaxErrorRetryForCopyRequest ());
22632260 log .debug (errorMsg );
2264- if (retryIndex < clientConfig .getMaxErrorRetryForCopyRequest () && RetryUtils .ShouldRetryCopyRequest (cse )) {
2261+ if (retryIndex < clientConfig .getMaxErrorRetryForCopyRequest () && RetryUtils .shouldRetryCopyRequest (cse )) {
22652262 retryIndex ++;
22662263 continue ;
22672264 }
@@ -4333,46 +4330,32 @@ public String reportBadCase(ReportBadCaseRequest reportBadCaseRequest) {
43334330 return invoke (request , new Unmarshallers .ReportBadCaseUnmarshaller ());
43344331 }
43354332
4336-
43374333 private String buildDocPreview (CosHttpRequest <DocHtmlRequest > request ) throws URISyntaxException {
4338- String urlStr = request .getProtocol ().toString () + "://" + request .getEndpoint () + request .getResourcePath ();
4339- URIBuilder uriBuilder = new URIBuilder (urlStr );
4340- COSSigner cosSigner = clientConfig .getCosSigner ();
43414334 Date expiredTime = new Date (System .currentTimeMillis () + clientConfig .getSignExpired () * 1000 );
4342- String authoriationStr = cosSigner . buildAuthorizationStr ( request . getHttpMethod (), request . getResourcePath (),
4343- request . getHeaders (), request . getParameters (), fetchCredential (), expiredTime , true );
4335+ HashMap < String , String > params = new HashMap <>();
4336+ params . put ( "ci-process" , "doc-preview" );
43444337 DocHtmlRequest originalRequest = request .getOriginalRequest ();
4345- uriBuilder .addParameter ("ci-process" , "doc-preview" );
4346- uriBuilder .addParameter ("dstType" , originalRequest .getDstType ().toString ());
4347- uriBuilder .addParameter ("srcType" , originalRequest .getSrcType ());
4348- uriBuilder .addParameter ("page" , originalRequest .getPage ());
4349- uriBuilder .addParameter ("ImageParams" , originalRequest .getImageParams ());
4350- uriBuilder .addParameter ("sheet" , originalRequest .getSheet ());
4351- uriBuilder .addParameter ("password" , originalRequest .getPassword ());
4352- uriBuilder .addParameter ("comment" , originalRequest .getComment ());
4353- uriBuilder .addParameter ("excelPaperDirection" , originalRequest .getExcelPaperDirection ());
4354- uriBuilder .addParameter ("excelPaperSize" , originalRequest .getExcelPaperSize ());
4355- uriBuilder .addParameter ("quality" , originalRequest .getQuality ());
4356- uriBuilder .addParameter ("scale" , originalRequest .getScale ());
4357- uriBuilder .addParameter ("imageDpi" , originalRequest .getImageDpi ());
4358- return uriBuilder .build ().toString () + "&" + authoriationStr ;
4359- }
4360-
4361- // private void checkAuditingRequest(ImageAuditingRequest request) {
4362- // rejectNull(request.getDetectType(), "The detectType parameter must be specified setting the object tags");
4363- // rejectNull(request.getObjectKey(), "The objectKey parameter must be specified setting the object tags");
4364- // }
4365- //
4366- // private void checkWorkflowParameter(MediaWorkflowRequest request) {
4367- // rejectNull(request.getName(),
4368- // "The name parameter must be specified setting the object tags");
4369- // rejectNull(request.getTopology(),
4370- // "The topology parameter must be specified setting the object tags");
4371- // rejectEmpty(request.getTopology().getMediaWorkflowNodes(),
4372- // "The Nodes parameter must be specified setting the object tags");
4373- // rejectEmpty(request.getTopology().getMediaWorkflowDependency(),
4374- // "The Dependency parameter must be specified setting the object tags");
4375- // }
4338+ putIfNotNull (params , "dstType" , originalRequest .getDstType ().toString ());
4339+ putIfNotNull (params , "srcType" , originalRequest .getSrcType ());
4340+ putIfNotNull (params , "page" , originalRequest .getPage ());
4341+ putIfNotNull (params , "ImageParams" , originalRequest .getImageParams ());
4342+ putIfNotNull (params , "sheet" , originalRequest .getSheet ());
4343+ putIfNotNull (params , "password" , originalRequest .getPassword ());
4344+ putIfNotNull (params , "comment" , originalRequest .getComment ());
4345+ putIfNotNull (params , "excelPaperDirection" , originalRequest .getExcelPaperDirection ());
4346+ putIfNotNull (params , "excelPaperSize" , originalRequest .getExcelPaperSize ());
4347+ putIfNotNull (params , "quality" , originalRequest .getQuality ());
4348+ putIfNotNull (params , "scale" , originalRequest .getScale ());
4349+ putIfNotNull (params , "imageDpi" , originalRequest .getImageDpi ());
4350+ URL url = generatePresignedUrl (request .getBucketName (), request .getResourcePath (), expiredTime , HttpMethodName .GET , new HashMap <String , String >(), params , false , false );
4351+ return url .toString ();
4352+ }
4353+
4354+ private void putIfNotNull (HashMap <String , String > map , String key , String value ) {
4355+ if (value != null ) {
4356+ map .put (key , value );
4357+ }
4358+ }
43764359
43774360 private void checkCIRequestCommon (CIServiceRequest request ) {
43784361 rejectNull (request ,
@@ -4381,16 +4364,6 @@ private void checkCIRequestCommon(CIServiceRequest request) {
43814364 "The bucketName parameter must be specified setting the object tags" );
43824365 }
43834366
4384- // private void checkRequestOutput(MediaOutputObject output) {
4385- // rejectNull(output.getBucket(),
4386- // "The output.bucket parameter must be specified setting the object tags");
4387- // rejectNull(output.getRegion(),
4388- // "The output.region parameter must be specified setting the object tags");
4389- // rejectNull(output.getObject(),
4390- // "The output.object parameter must be specified setting the object tags");
4391- // }
4392-
4393-
43944367 private void checkMediaListJobResponse (MediaListJobResponse response ) {
43954368 List <MediaJobObject > jobsDetailList = response .getJobsDetailList ();
43964369 if (jobsDetailList .size () == 1 ) {
@@ -5133,6 +5106,50 @@ public MediaListTemplateResponse describeMediaTemplatesV2(MediaTemplateRequest r
51335106 return this .invoke (httpRequest , new Unmarshallers .CICommonUnmarshaller <MediaListTemplateResponse >(MediaListTemplateResponse .class ));
51345107 }
51355108
5109+ @ Override
5110+ public InputStream getPlayList (GetPlayListRequest getPlayListRequest ) {
5111+ CosHttpRequest <GetPlayListRequest > request = createRequest (getPlayListRequest .getBucketName (), "/getplaylist" , getPlayListRequest , HttpMethodName .GET );
5112+ addParameterIfNotNull (request , "object" , getPlayListRequest .getObject ());
5113+ addParameterIfNotNull (request , "expires" , getPlayListRequest .getExpires ());
5114+
5115+ return invoke (request , new CIGetSnapshotResponseHandler ());
5116+ }
51365117
5118+ @ Override
5119+ public RecognizeLogoResponse recognizeLogo (RecognizeLogoRequest customRequest ) {
5120+
5121+ CosHttpRequest <RecognizeLogoRequest > request = createRequest (customRequest .getBucketName (), "/" , customRequest , HttpMethodName .GET );
5122+ addParameterIfNotNull (request , "ci-process" , customRequest .getCiProcess ());
5123+ addParameterIfNotNull (request , "detect-url" , customRequest .getDetectUrl ());
5124+
5125+ return invoke (request , new Unmarshallers .CICommonUnmarshaller <RecognizeLogoResponse >(RecognizeLogoResponse .class ));
5126+ }
5127+
5128+ @ Override
5129+ public CreateDatasetResponse createDataset (CreateDatasetRequest customRequest ) {
5130+ return null ;
5131+ }
5132+
5133+
5134+ public String generateCosDomainPrivateM3U8Url (PrivateM3U8Request privateM3U8Request ) {
5135+ CosHttpRequest <PrivateM3U8Request > request = createRequest (privateM3U8Request .getBucketName (), privateM3U8Request .getObject (), privateM3U8Request , HttpMethodName .GET );
5136+ request .addParameter ("ci-process" ,"pm3u8" );
5137+ addParameterIfNotNull (request ,"expires" ,privateM3U8Request .getExpires ());
5138+ addParameterIfNotNull (request ,"tokenType" ,privateM3U8Request .getTokenType ());
5139+ addParameterIfNotNull (request ,"token" ,privateM3U8Request .getToken ());
5140+ return buildPrivateM3U8Url (request );
5141+ }
5142+
5143+ private String buildPrivateM3U8Url (CosHttpRequest <PrivateM3U8Request > request ) {
5144+ Date expiredTime = new Date (System .currentTimeMillis () + clientConfig .getSignExpired () * 1000 );
5145+ HashMap <String , String > params = new HashMap <>();
5146+ params .put ("ci-process" , "pm3u8" );
5147+ PrivateM3U8Request originalRequest = request .getOriginalRequest ();
5148+ putIfNotNull (params , "expires" , originalRequest .getExpires ());
5149+ putIfNotNull (params , "tokenType" , originalRequest .getTokenType ());
5150+ putIfNotNull (params , "token" , originalRequest .getToken ());
5151+ URL url = generatePresignedUrl (request .getBucketName (), request .getResourcePath (), expiredTime , HttpMethodName .GET , new HashMap <String , String >(), params , false , false );
5152+ return url .toString ();
5153+ }
51375154}
51385155
0 commit comments