Browse Source

VOD SDK Auto Released By xiao.xwp,Version:1.34.1

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy 7 years ago
parent
commit
2fb169a7d4
71 changed files with 4179 additions and 56 deletions
  1. 5 0
      CHANGELOG
  2. 1 1
      VERSION
  3. BIN
      vod/.DS_Store
  4. 54 2
      vod/CMakeLists.txt
  5. BIN
      vod/include/.DS_Store
  6. BIN
      vod/include/alibabacloud/.DS_Store
  7. BIN
      vod/include/alibabacloud/vod/.DS_Store
  8. 104 0
      vod/include/alibabacloud/vod/VodClient.h
  9. BIN
      vod/include/alibabacloud/vod/VodExport.h
  10. 66 0
      vod/include/alibabacloud/vod/model/AddCategoryRequest.h
  11. 51 0
      vod/include/alibabacloud/vod/model/AddVodTemplateResult.h
  12. 60 0
      vod/include/alibabacloud/vod/model/AddWatermarkRequest.h
  13. 51 0
      vod/include/alibabacloud/vod/model/AddWorkFlowResult.h
  14. 84 0
      vod/include/alibabacloud/vod/model/CreateAuditRequest.h
  15. 59 0
      vod/include/alibabacloud/vod/model/CreateUploadAttachedMediaResult.h
  16. 3 0
      vod/include/alibabacloud/vod/model/CreateUploadImageRequest.h
  17. 57 0
      vod/include/alibabacloud/vod/model/CreateUploadImageResult.h
  18. 51 0
      vod/include/alibabacloud/vod/model/DeleteVodTemplateResult.h
  19. 57 0
      vod/include/alibabacloud/vod/model/DeleteWatermarkRequest.h
  20. 51 0
      vod/include/alibabacloud/vod/model/DeleteWorkFlowResult.h
  21. 8 0
      vod/include/alibabacloud/vod/model/DescribeCdnDomainLogsRequest.h
  22. 63 0
      vod/include/alibabacloud/vod/model/GetMediaDNAResultRequest.h
  23. 76 0
      vod/include/alibabacloud/vod/model/GetMediaDNAResultResult.h
  24. 57 0
      vod/include/alibabacloud/vod/model/GetMessageCallbackRequest.h
  25. 63 0
      vod/include/alibabacloud/vod/model/GetVodTemplateResult.h
  26. 57 0
      vod/include/alibabacloud/vod/model/GetWatermarkRequest.h
  27. 59 0
      vod/include/alibabacloud/vod/model/GetWorkFlowResult.h
  28. 57 0
      vod/include/alibabacloud/vod/model/ListAIASRJobRequest.h
  29. 63 0
      vod/include/alibabacloud/vod/model/ListVodTemplateResult.h
  30. 54 0
      vod/include/alibabacloud/vod/model/ListWatermarkRequest.h
  31. 59 0
      vod/include/alibabacloud/vod/model/ListWorkFlowResult.h
  32. 57 0
      vod/include/alibabacloud/vod/model/OpenVodServiceRequest.h
  33. 51 0
      vod/include/alibabacloud/vod/model/SetDefaultVodTemplateResult.h
  34. 15 12
      vod/include/alibabacloud/vod/model/SetDefaultWatermarkRequest.h
  35. 63 0
      vod/include/alibabacloud/vod/model/SubmitSnapshotJobResult.h
  36. 51 0
      vod/include/alibabacloud/vod/model/UpdateVodTemplateResult.h
  37. 63 0
      vod/include/alibabacloud/vod/model/UpdateWatermarkRequest.h
  38. 51 0
      vod/include/alibabacloud/vod/model/UpdateWorkFlowResult.h
  39. BIN
      vod/include/alibabacloud/vod/model/UploadMediaByURLRequest.h
  40. 471 4
      vod/src/VodClient.cc
  41. BIN
      vod/src/model/.DS_Store
  42. 104 0
      vod/src/model/AddCategoryRequest.cc
  43. 52 0
      vod/src/model/AddVodTemplateResult.cc
  44. 82 0
      vod/src/model/AddWatermarkRequest.cc
  45. 52 0
      vod/src/model/AddWorkFlowResult.cc
  46. 170 0
      vod/src/model/CreateAuditRequest.cc
  47. 80 0
      vod/src/model/CreateUploadAttachedMediaResult.cc
  48. 11 0
      vod/src/model/CreateUploadImageRequest.cc
  49. 71 0
      vod/src/model/CreateUploadImageResult.cc
  50. 52 0
      vod/src/model/DeleteVodTemplateResult.cc
  51. 71 0
      vod/src/model/DeleteWatermarkRequest.cc
  52. 52 0
      vod/src/model/DeleteWorkFlowResult.cc
  53. 16 0
      vod/src/model/DescribeCdnDomainLogsRequest.cc
  54. 93 0
      vod/src/model/GetMediaDNAResultRequest.cc
  55. 77 0
      vod/src/model/GetMediaDNAResultResult.cc
  56. 71 0
      vod/src/model/GetMessageCallbackRequest.cc
  57. 69 0
      vod/src/model/GetVodTemplateResult.cc
  58. 71 0
      vod/src/model/GetWatermarkRequest.cc
  59. 61 0
      vod/src/model/GetWorkFlowResult.cc
  60. 71 0
      vod/src/model/ListAIASRJobRequest.cc
  61. 74 0
      vod/src/model/ListVodTemplateResult.cc
  62. 60 0
      vod/src/model/ListWatermarkRequest.cc
  63. 66 0
      vod/src/model/ListWorkFlowResult.cc
  64. 71 0
      vod/src/model/OpenVodServiceRequest.cc
  65. 52 0
      vod/src/model/SetDefaultVodTemplateResult.cc
  66. 48 37
      vod/src/model/SetDefaultWatermarkRequest.cc
  67. 93 0
      vod/src/model/SubmitSnapshotJobResult.cc
  68. 52 0
      vod/src/model/UpdateVodTemplateResult.cc
  69. 93 0
      vod/src/model/UpdateWatermarkRequest.cc
  70. 52 0
      vod/src/model/UpdateWorkFlowResult.cc
  71. 0 0
      vod/src/model/UploadMediaByURLRequest.cc

+ 5 - 0
CHANGELOG

@@ -1,3 +1,8 @@
+2018-11-30 Version: 1.34.1
+1, Add new apis called AddVodTemplate, UpdateVodTemplate, DeleteVodTemplate, ListVodTemplate, GetVodTemplate and SetDefaultVodTemplate which support vodtemplate feature.
+2, Add a new api called CreateUploadAttachedMedia to get upload auth for attached media
+3, Add new apis called AddWorkFlow, UpdateWorkFlow, DeleteWorkFlow, ListWorkFlow, GetWorkFlow  which support workflow feature.
+
 2018-11-28 Version: 1.34.0
 1, Add RedeployInstance interface, and support to migrate ecs instance with specified maintenance events actively
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.34.0
+1.34.1

BIN
vod/.DS_Store


+ 54 - 2
vod/CMakeLists.txt

@@ -27,6 +27,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/DeleteImageResult.h
 	include/alibabacloud/vod/model/DeleteCategoryRequest.h
 	include/alibabacloud/vod/model/DeleteCategoryResult.h
+	include/alibabacloud/vod/model/CreateUploadAttachedMediaRequest.h
+	include/alibabacloud/vod/model/CreateUploadAttachedMediaResult.h
 	include/alibabacloud/vod/model/ListAIVideoSummaryJobRequest.h
 	include/alibabacloud/vod/model/ListAIVideoSummaryJobResult.h
 	include/alibabacloud/vod/model/ListSnapshotsRequest.h
@@ -39,6 +41,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/ListAIVideoTerrorismRecogJobResult.h
 	include/alibabacloud/vod/model/UpdateEditingProjectRequest.h
 	include/alibabacloud/vod/model/UpdateEditingProjectResult.h
+	include/alibabacloud/vod/model/SetDefaultVodTemplateRequest.h
+	include/alibabacloud/vod/model/SetDefaultVodTemplateResult.h
 	include/alibabacloud/vod/model/RefreshObjectCachesRequest.h
 	include/alibabacloud/vod/model/RefreshObjectCachesResult.h
 	include/alibabacloud/vod/model/DescribeDomainBpsDataRequest.h
@@ -47,6 +51,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/ListAuditSecurityIpResult.h
 	include/alibabacloud/vod/model/GetAuditHistoryRequest.h
 	include/alibabacloud/vod/model/GetAuditHistoryResult.h
+	include/alibabacloud/vod/model/GetMediaDNAResultRequest.h
+	include/alibabacloud/vod/model/GetMediaDNAResultResult.h
 	include/alibabacloud/vod/model/GetVideoInfoRequest.h
 	include/alibabacloud/vod/model/GetVideoInfoResult.h
 	include/alibabacloud/vod/model/SetMessageCallbackRequest.h
@@ -81,8 +87,12 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/GetVideoPlayAuthResult.h
 	include/alibabacloud/vod/model/GetAuditResultRequest.h
 	include/alibabacloud/vod/model/GetAuditResultResult.h
+	include/alibabacloud/vod/model/DeleteVodTemplateRequest.h
+	include/alibabacloud/vod/model/DeleteVodTemplateResult.h
 	include/alibabacloud/vod/model/SubmitPreprocessJobsRequest.h
 	include/alibabacloud/vod/model/SubmitPreprocessJobsResult.h
+	include/alibabacloud/vod/model/ListVodTemplateRequest.h
+	include/alibabacloud/vod/model/ListVodTemplateResult.h
 	include/alibabacloud/vod/model/GetVideoPlayInfoRequest.h
 	include/alibabacloud/vod/model/GetVideoPlayInfoResult.h
 	include/alibabacloud/vod/model/ListAIJobRequest.h
@@ -99,6 +109,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/UpdateVideoInfoResult.h
 	include/alibabacloud/vod/model/UpdateImageInfosRequest.h
 	include/alibabacloud/vod/model/UpdateImageInfosResult.h
+	include/alibabacloud/vod/model/DeleteWorkFlowRequest.h
+	include/alibabacloud/vod/model/DeleteWorkFlowResult.h
 	include/alibabacloud/vod/model/SearchMediaRequest.h
 	include/alibabacloud/vod/model/SearchMediaResult.h
 	include/alibabacloud/vod/model/DescribePlayTopVideosRequest.h
@@ -133,10 +145,14 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/UpdateWatermarkResult.h
 	include/alibabacloud/vod/model/GetImageInfoRequest.h
 	include/alibabacloud/vod/model/GetImageInfoResult.h
+	include/alibabacloud/vod/model/ListWorkFlowRequest.h
+	include/alibabacloud/vod/model/ListWorkFlowResult.h
 	include/alibabacloud/vod/model/GetMessageCallbackRequest.h
 	include/alibabacloud/vod/model/GetMessageCallbackResult.h
 	include/alibabacloud/vod/model/ListLiveRecordVideoRequest.h
 	include/alibabacloud/vod/model/ListLiveRecordVideoResult.h
+	include/alibabacloud/vod/model/UpdateVodTemplateRequest.h
+	include/alibabacloud/vod/model/UpdateVodTemplateResult.h
 	include/alibabacloud/vod/model/ListAIVideoCategoryJobRequest.h
 	include/alibabacloud/vod/model/ListAIVideoCategoryJobResult.h
 	include/alibabacloud/vod/model/GetCategoriesRequest.h
@@ -145,6 +161,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/DescribePlayVideoStatisResult.h
 	include/alibabacloud/vod/model/DeleteStreamRequest.h
 	include/alibabacloud/vod/model/DeleteStreamResult.h
+	include/alibabacloud/vod/model/UpdateWorkFlowRequest.h
+	include/alibabacloud/vod/model/UpdateWorkFlowResult.h
 	include/alibabacloud/vod/model/UploadMediaByURLRequest.h
 	include/alibabacloud/vod/model/UploadMediaByURLResult.h
 	include/alibabacloud/vod/model/SubmitAIJobRequest.h
@@ -155,8 +173,12 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/SubmitAIASRJobResult.h
 	include/alibabacloud/vod/model/GetPlayInfoRequest.h
 	include/alibabacloud/vod/model/GetPlayInfoResult.h
+	include/alibabacloud/vod/model/GetWorkFlowRequest.h
+	include/alibabacloud/vod/model/GetWorkFlowResult.h
 	include/alibabacloud/vod/model/SubmitTranscodeJobsRequest.h
 	include/alibabacloud/vod/model/SubmitTranscodeJobsResult.h
+	include/alibabacloud/vod/model/AddWorkFlowRequest.h
+	include/alibabacloud/vod/model/AddWorkFlowResult.h
 	include/alibabacloud/vod/model/CreateUploadVideoRequest.h
 	include/alibabacloud/vod/model/CreateUploadVideoResult.h
 	include/alibabacloud/vod/model/GetOSSStatisRequest.h
@@ -181,10 +203,14 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/GetMezzanineInfoResult.h
 	include/alibabacloud/vod/model/DeleteVideoRequest.h
 	include/alibabacloud/vod/model/DeleteVideoResult.h
+	include/alibabacloud/vod/model/AddVodTemplateRequest.h
+	include/alibabacloud/vod/model/AddVodTemplateResult.h
 	include/alibabacloud/vod/model/SubmitAIVideoCoverJobRequest.h
 	include/alibabacloud/vod/model/SubmitAIVideoCoverJobResult.h
 	include/alibabacloud/vod/model/DescribePlayUserAvgRequest.h
-	include/alibabacloud/vod/model/DescribePlayUserAvgResult.h )
+	include/alibabacloud/vod/model/DescribePlayUserAvgResult.h
+	include/alibabacloud/vod/model/GetVodTemplateRequest.h
+	include/alibabacloud/vod/model/GetVodTemplateResult.h )
 
 set(vod_src 
 	src/VodClient.cc
@@ -194,6 +220,8 @@ set(vod_src
 	src/model/DeleteImageResult.cc
 	src/model/DeleteCategoryRequest.cc
 	src/model/DeleteCategoryResult.cc
+	src/model/CreateUploadAttachedMediaRequest.cc
+	src/model/CreateUploadAttachedMediaResult.cc
 	src/model/ListAIVideoSummaryJobRequest.cc
 	src/model/ListAIVideoSummaryJobResult.cc
 	src/model/ListSnapshotsRequest.cc
@@ -206,6 +234,8 @@ set(vod_src
 	src/model/ListAIVideoTerrorismRecogJobResult.cc
 	src/model/UpdateEditingProjectRequest.cc
 	src/model/UpdateEditingProjectResult.cc
+	src/model/SetDefaultVodTemplateRequest.cc
+	src/model/SetDefaultVodTemplateResult.cc
 	src/model/RefreshObjectCachesRequest.cc
 	src/model/RefreshObjectCachesResult.cc
 	src/model/DescribeDomainBpsDataRequest.cc
@@ -214,6 +244,8 @@ set(vod_src
 	src/model/ListAuditSecurityIpResult.cc
 	src/model/GetAuditHistoryRequest.cc
 	src/model/GetAuditHistoryResult.cc
+	src/model/GetMediaDNAResultRequest.cc
+	src/model/GetMediaDNAResultResult.cc
 	src/model/GetVideoInfoRequest.cc
 	src/model/GetVideoInfoResult.cc
 	src/model/SetMessageCallbackRequest.cc
@@ -248,8 +280,12 @@ set(vod_src
 	src/model/GetVideoPlayAuthResult.cc
 	src/model/GetAuditResultRequest.cc
 	src/model/GetAuditResultResult.cc
+	src/model/DeleteVodTemplateRequest.cc
+	src/model/DeleteVodTemplateResult.cc
 	src/model/SubmitPreprocessJobsRequest.cc
 	src/model/SubmitPreprocessJobsResult.cc
+	src/model/ListVodTemplateRequest.cc
+	src/model/ListVodTemplateResult.cc
 	src/model/GetVideoPlayInfoRequest.cc
 	src/model/GetVideoPlayInfoResult.cc
 	src/model/ListAIJobRequest.cc
@@ -266,6 +302,8 @@ set(vod_src
 	src/model/UpdateVideoInfoResult.cc
 	src/model/UpdateImageInfosRequest.cc
 	src/model/UpdateImageInfosResult.cc
+	src/model/DeleteWorkFlowRequest.cc
+	src/model/DeleteWorkFlowResult.cc
 	src/model/SearchMediaRequest.cc
 	src/model/SearchMediaResult.cc
 	src/model/DescribePlayTopVideosRequest.cc
@@ -300,10 +338,14 @@ set(vod_src
 	src/model/UpdateWatermarkResult.cc
 	src/model/GetImageInfoRequest.cc
 	src/model/GetImageInfoResult.cc
+	src/model/ListWorkFlowRequest.cc
+	src/model/ListWorkFlowResult.cc
 	src/model/GetMessageCallbackRequest.cc
 	src/model/GetMessageCallbackResult.cc
 	src/model/ListLiveRecordVideoRequest.cc
 	src/model/ListLiveRecordVideoResult.cc
+	src/model/UpdateVodTemplateRequest.cc
+	src/model/UpdateVodTemplateResult.cc
 	src/model/ListAIVideoCategoryJobRequest.cc
 	src/model/ListAIVideoCategoryJobResult.cc
 	src/model/GetCategoriesRequest.cc
@@ -312,6 +354,8 @@ set(vod_src
 	src/model/DescribePlayVideoStatisResult.cc
 	src/model/DeleteStreamRequest.cc
 	src/model/DeleteStreamResult.cc
+	src/model/UpdateWorkFlowRequest.cc
+	src/model/UpdateWorkFlowResult.cc
 	src/model/UploadMediaByURLRequest.cc
 	src/model/UploadMediaByURLResult.cc
 	src/model/SubmitAIJobRequest.cc
@@ -322,8 +366,12 @@ set(vod_src
 	src/model/SubmitAIASRJobResult.cc
 	src/model/GetPlayInfoRequest.cc
 	src/model/GetPlayInfoResult.cc
+	src/model/GetWorkFlowRequest.cc
+	src/model/GetWorkFlowResult.cc
 	src/model/SubmitTranscodeJobsRequest.cc
 	src/model/SubmitTranscodeJobsResult.cc
+	src/model/AddWorkFlowRequest.cc
+	src/model/AddWorkFlowResult.cc
 	src/model/CreateUploadVideoRequest.cc
 	src/model/CreateUploadVideoResult.cc
 	src/model/GetOSSStatisRequest.cc
@@ -348,10 +396,14 @@ set(vod_src
 	src/model/GetMezzanineInfoResult.cc
 	src/model/DeleteVideoRequest.cc
 	src/model/DeleteVideoResult.cc
+	src/model/AddVodTemplateRequest.cc
+	src/model/AddVodTemplateResult.cc
 	src/model/SubmitAIVideoCoverJobRequest.cc
 	src/model/SubmitAIVideoCoverJobResult.cc
 	src/model/DescribePlayUserAvgRequest.cc
-	src/model/DescribePlayUserAvgResult.cc )
+	src/model/DescribePlayUserAvgResult.cc
+	src/model/GetVodTemplateRequest.cc
+	src/model/GetVodTemplateResult.cc )
 
 add_library(vod ${LIB_TYPE}
 	${vod_public_header}

BIN
vod/include/.DS_Store


BIN
vod/include/alibabacloud/.DS_Store


BIN
vod/include/alibabacloud/vod/.DS_Store


+ 104 - 0
vod/include/alibabacloud/vod/VodClient.h

@@ -28,6 +28,8 @@
 #include "model/DeleteImageResult.h"
 #include "model/DeleteCategoryRequest.h"
 #include "model/DeleteCategoryResult.h"
+#include "model/CreateUploadAttachedMediaRequest.h"
+#include "model/CreateUploadAttachedMediaResult.h"
 #include "model/ListAIVideoSummaryJobRequest.h"
 #include "model/ListAIVideoSummaryJobResult.h"
 #include "model/ListSnapshotsRequest.h"
@@ -40,6 +42,8 @@
 #include "model/ListAIVideoTerrorismRecogJobResult.h"
 #include "model/UpdateEditingProjectRequest.h"
 #include "model/UpdateEditingProjectResult.h"
+#include "model/SetDefaultVodTemplateRequest.h"
+#include "model/SetDefaultVodTemplateResult.h"
 #include "model/RefreshObjectCachesRequest.h"
 #include "model/RefreshObjectCachesResult.h"
 #include "model/DescribeDomainBpsDataRequest.h"
@@ -48,6 +52,8 @@
 #include "model/ListAuditSecurityIpResult.h"
 #include "model/GetAuditHistoryRequest.h"
 #include "model/GetAuditHistoryResult.h"
+#include "model/GetMediaDNAResultRequest.h"
+#include "model/GetMediaDNAResultResult.h"
 #include "model/GetVideoInfoRequest.h"
 #include "model/GetVideoInfoResult.h"
 #include "model/SetMessageCallbackRequest.h"
@@ -82,8 +88,12 @@
 #include "model/GetVideoPlayAuthResult.h"
 #include "model/GetAuditResultRequest.h"
 #include "model/GetAuditResultResult.h"
+#include "model/DeleteVodTemplateRequest.h"
+#include "model/DeleteVodTemplateResult.h"
 #include "model/SubmitPreprocessJobsRequest.h"
 #include "model/SubmitPreprocessJobsResult.h"
+#include "model/ListVodTemplateRequest.h"
+#include "model/ListVodTemplateResult.h"
 #include "model/GetVideoPlayInfoRequest.h"
 #include "model/GetVideoPlayInfoResult.h"
 #include "model/ListAIJobRequest.h"
@@ -100,6 +110,8 @@
 #include "model/UpdateVideoInfoResult.h"
 #include "model/UpdateImageInfosRequest.h"
 #include "model/UpdateImageInfosResult.h"
+#include "model/DeleteWorkFlowRequest.h"
+#include "model/DeleteWorkFlowResult.h"
 #include "model/SearchMediaRequest.h"
 #include "model/SearchMediaResult.h"
 #include "model/DescribePlayTopVideosRequest.h"
@@ -134,10 +146,14 @@
 #include "model/UpdateWatermarkResult.h"
 #include "model/GetImageInfoRequest.h"
 #include "model/GetImageInfoResult.h"
+#include "model/ListWorkFlowRequest.h"
+#include "model/ListWorkFlowResult.h"
 #include "model/GetMessageCallbackRequest.h"
 #include "model/GetMessageCallbackResult.h"
 #include "model/ListLiveRecordVideoRequest.h"
 #include "model/ListLiveRecordVideoResult.h"
+#include "model/UpdateVodTemplateRequest.h"
+#include "model/UpdateVodTemplateResult.h"
 #include "model/ListAIVideoCategoryJobRequest.h"
 #include "model/ListAIVideoCategoryJobResult.h"
 #include "model/GetCategoriesRequest.h"
@@ -146,6 +162,8 @@
 #include "model/DescribePlayVideoStatisResult.h"
 #include "model/DeleteStreamRequest.h"
 #include "model/DeleteStreamResult.h"
+#include "model/UpdateWorkFlowRequest.h"
+#include "model/UpdateWorkFlowResult.h"
 #include "model/UploadMediaByURLRequest.h"
 #include "model/UploadMediaByURLResult.h"
 #include "model/SubmitAIJobRequest.h"
@@ -156,8 +174,12 @@
 #include "model/SubmitAIASRJobResult.h"
 #include "model/GetPlayInfoRequest.h"
 #include "model/GetPlayInfoResult.h"
+#include "model/GetWorkFlowRequest.h"
+#include "model/GetWorkFlowResult.h"
 #include "model/SubmitTranscodeJobsRequest.h"
 #include "model/SubmitTranscodeJobsResult.h"
+#include "model/AddWorkFlowRequest.h"
+#include "model/AddWorkFlowResult.h"
 #include "model/CreateUploadVideoRequest.h"
 #include "model/CreateUploadVideoResult.h"
 #include "model/GetOSSStatisRequest.h"
@@ -182,10 +204,14 @@
 #include "model/GetMezzanineInfoResult.h"
 #include "model/DeleteVideoRequest.h"
 #include "model/DeleteVideoResult.h"
+#include "model/AddVodTemplateRequest.h"
+#include "model/AddVodTemplateResult.h"
 #include "model/SubmitAIVideoCoverJobRequest.h"
 #include "model/SubmitAIVideoCoverJobResult.h"
 #include "model/DescribePlayUserAvgRequest.h"
 #include "model/DescribePlayUserAvgResult.h"
+#include "model/GetVodTemplateRequest.h"
+#include "model/GetVodTemplateResult.h"
 
 
 namespace AlibabaCloud
@@ -204,6 +230,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteCategoryResult> DeleteCategoryOutcome;
 			typedef std::future<DeleteCategoryOutcome> DeleteCategoryOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DeleteCategoryRequest&, const DeleteCategoryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteCategoryAsyncHandler;
+			typedef Outcome<Error, Model::CreateUploadAttachedMediaResult> CreateUploadAttachedMediaOutcome;
+			typedef std::future<CreateUploadAttachedMediaOutcome> CreateUploadAttachedMediaOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::CreateUploadAttachedMediaRequest&, const CreateUploadAttachedMediaOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateUploadAttachedMediaAsyncHandler;
 			typedef Outcome<Error, Model::ListAIVideoSummaryJobResult> ListAIVideoSummaryJobOutcome;
 			typedef std::future<ListAIVideoSummaryJobOutcome> ListAIVideoSummaryJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::ListAIVideoSummaryJobRequest&, const ListAIVideoSummaryJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAIVideoSummaryJobAsyncHandler;
@@ -222,6 +251,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateEditingProjectResult> UpdateEditingProjectOutcome;
 			typedef std::future<UpdateEditingProjectOutcome> UpdateEditingProjectOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::UpdateEditingProjectRequest&, const UpdateEditingProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateEditingProjectAsyncHandler;
+			typedef Outcome<Error, Model::SetDefaultVodTemplateResult> SetDefaultVodTemplateOutcome;
+			typedef std::future<SetDefaultVodTemplateOutcome> SetDefaultVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::SetDefaultVodTemplateRequest&, const SetDefaultVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetDefaultVodTemplateAsyncHandler;
 			typedef Outcome<Error, Model::RefreshObjectCachesResult> RefreshObjectCachesOutcome;
 			typedef std::future<RefreshObjectCachesOutcome> RefreshObjectCachesOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::RefreshObjectCachesRequest&, const RefreshObjectCachesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RefreshObjectCachesAsyncHandler;
@@ -234,6 +266,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetAuditHistoryResult> GetAuditHistoryOutcome;
 			typedef std::future<GetAuditHistoryOutcome> GetAuditHistoryOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetAuditHistoryRequest&, const GetAuditHistoryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAuditHistoryAsyncHandler;
+			typedef Outcome<Error, Model::GetMediaDNAResultResult> GetMediaDNAResultOutcome;
+			typedef std::future<GetMediaDNAResultOutcome> GetMediaDNAResultOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetMediaDNAResultRequest&, const GetMediaDNAResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMediaDNAResultAsyncHandler;
 			typedef Outcome<Error, Model::GetVideoInfoResult> GetVideoInfoOutcome;
 			typedef std::future<GetVideoInfoOutcome> GetVideoInfoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetVideoInfoRequest&, const GetVideoInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVideoInfoAsyncHandler;
@@ -285,9 +320,15 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetAuditResultResult> GetAuditResultOutcome;
 			typedef std::future<GetAuditResultOutcome> GetAuditResultOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetAuditResultRequest&, const GetAuditResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAuditResultAsyncHandler;
+			typedef Outcome<Error, Model::DeleteVodTemplateResult> DeleteVodTemplateOutcome;
+			typedef std::future<DeleteVodTemplateOutcome> DeleteVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DeleteVodTemplateRequest&, const DeleteVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVodTemplateAsyncHandler;
 			typedef Outcome<Error, Model::SubmitPreprocessJobsResult> SubmitPreprocessJobsOutcome;
 			typedef std::future<SubmitPreprocessJobsOutcome> SubmitPreprocessJobsOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitPreprocessJobsRequest&, const SubmitPreprocessJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitPreprocessJobsAsyncHandler;
+			typedef Outcome<Error, Model::ListVodTemplateResult> ListVodTemplateOutcome;
+			typedef std::future<ListVodTemplateOutcome> ListVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::ListVodTemplateRequest&, const ListVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVodTemplateAsyncHandler;
 			typedef Outcome<Error, Model::GetVideoPlayInfoResult> GetVideoPlayInfoOutcome;
 			typedef std::future<GetVideoPlayInfoOutcome> GetVideoPlayInfoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetVideoPlayInfoRequest&, const GetVideoPlayInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVideoPlayInfoAsyncHandler;
@@ -312,6 +353,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateImageInfosResult> UpdateImageInfosOutcome;
 			typedef std::future<UpdateImageInfosOutcome> UpdateImageInfosOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::UpdateImageInfosRequest&, const UpdateImageInfosOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateImageInfosAsyncHandler;
+			typedef Outcome<Error, Model::DeleteWorkFlowResult> DeleteWorkFlowOutcome;
+			typedef std::future<DeleteWorkFlowOutcome> DeleteWorkFlowOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DeleteWorkFlowRequest&, const DeleteWorkFlowOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteWorkFlowAsyncHandler;
 			typedef Outcome<Error, Model::SearchMediaResult> SearchMediaOutcome;
 			typedef std::future<SearchMediaOutcome> SearchMediaOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SearchMediaRequest&, const SearchMediaOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SearchMediaAsyncHandler;
@@ -363,12 +407,18 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetImageInfoResult> GetImageInfoOutcome;
 			typedef std::future<GetImageInfoOutcome> GetImageInfoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetImageInfoRequest&, const GetImageInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetImageInfoAsyncHandler;
+			typedef Outcome<Error, Model::ListWorkFlowResult> ListWorkFlowOutcome;
+			typedef std::future<ListWorkFlowOutcome> ListWorkFlowOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::ListWorkFlowRequest&, const ListWorkFlowOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListWorkFlowAsyncHandler;
 			typedef Outcome<Error, Model::GetMessageCallbackResult> GetMessageCallbackOutcome;
 			typedef std::future<GetMessageCallbackOutcome> GetMessageCallbackOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetMessageCallbackRequest&, const GetMessageCallbackOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMessageCallbackAsyncHandler;
 			typedef Outcome<Error, Model::ListLiveRecordVideoResult> ListLiveRecordVideoOutcome;
 			typedef std::future<ListLiveRecordVideoOutcome> ListLiveRecordVideoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::ListLiveRecordVideoRequest&, const ListLiveRecordVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLiveRecordVideoAsyncHandler;
+			typedef Outcome<Error, Model::UpdateVodTemplateResult> UpdateVodTemplateOutcome;
+			typedef std::future<UpdateVodTemplateOutcome> UpdateVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::UpdateVodTemplateRequest&, const UpdateVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateVodTemplateAsyncHandler;
 			typedef Outcome<Error, Model::ListAIVideoCategoryJobResult> ListAIVideoCategoryJobOutcome;
 			typedef std::future<ListAIVideoCategoryJobOutcome> ListAIVideoCategoryJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::ListAIVideoCategoryJobRequest&, const ListAIVideoCategoryJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAIVideoCategoryJobAsyncHandler;
@@ -381,6 +431,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteStreamResult> DeleteStreamOutcome;
 			typedef std::future<DeleteStreamOutcome> DeleteStreamOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DeleteStreamRequest&, const DeleteStreamOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteStreamAsyncHandler;
+			typedef Outcome<Error, Model::UpdateWorkFlowResult> UpdateWorkFlowOutcome;
+			typedef std::future<UpdateWorkFlowOutcome> UpdateWorkFlowOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::UpdateWorkFlowRequest&, const UpdateWorkFlowOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateWorkFlowAsyncHandler;
 			typedef Outcome<Error, Model::UploadMediaByURLResult> UploadMediaByURLOutcome;
 			typedef std::future<UploadMediaByURLOutcome> UploadMediaByURLOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::UploadMediaByURLRequest&, const UploadMediaByURLOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UploadMediaByURLAsyncHandler;
@@ -396,9 +449,15 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetPlayInfoResult> GetPlayInfoOutcome;
 			typedef std::future<GetPlayInfoOutcome> GetPlayInfoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetPlayInfoRequest&, const GetPlayInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetPlayInfoAsyncHandler;
+			typedef Outcome<Error, Model::GetWorkFlowResult> GetWorkFlowOutcome;
+			typedef std::future<GetWorkFlowOutcome> GetWorkFlowOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetWorkFlowRequest&, const GetWorkFlowOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetWorkFlowAsyncHandler;
 			typedef Outcome<Error, Model::SubmitTranscodeJobsResult> SubmitTranscodeJobsOutcome;
 			typedef std::future<SubmitTranscodeJobsOutcome> SubmitTranscodeJobsOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitTranscodeJobsRequest&, const SubmitTranscodeJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitTranscodeJobsAsyncHandler;
+			typedef Outcome<Error, Model::AddWorkFlowResult> AddWorkFlowOutcome;
+			typedef std::future<AddWorkFlowOutcome> AddWorkFlowOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::AddWorkFlowRequest&, const AddWorkFlowOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddWorkFlowAsyncHandler;
 			typedef Outcome<Error, Model::CreateUploadVideoResult> CreateUploadVideoOutcome;
 			typedef std::future<CreateUploadVideoOutcome> CreateUploadVideoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::CreateUploadVideoRequest&, const CreateUploadVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateUploadVideoAsyncHandler;
@@ -435,12 +494,18 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteVideoResult> DeleteVideoOutcome;
 			typedef std::future<DeleteVideoOutcome> DeleteVideoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DeleteVideoRequest&, const DeleteVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVideoAsyncHandler;
+			typedef Outcome<Error, Model::AddVodTemplateResult> AddVodTemplateOutcome;
+			typedef std::future<AddVodTemplateOutcome> AddVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::AddVodTemplateRequest&, const AddVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddVodTemplateAsyncHandler;
 			typedef Outcome<Error, Model::SubmitAIVideoCoverJobResult> SubmitAIVideoCoverJobOutcome;
 			typedef std::future<SubmitAIVideoCoverJobOutcome> SubmitAIVideoCoverJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitAIVideoCoverJobRequest&, const SubmitAIVideoCoverJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitAIVideoCoverJobAsyncHandler;
 			typedef Outcome<Error, Model::DescribePlayUserAvgResult> DescribePlayUserAvgOutcome;
 			typedef std::future<DescribePlayUserAvgOutcome> DescribePlayUserAvgOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DescribePlayUserAvgRequest&, const DescribePlayUserAvgOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribePlayUserAvgAsyncHandler;
+			typedef Outcome<Error, Model::GetVodTemplateResult> GetVodTemplateOutcome;
+			typedef std::future<GetVodTemplateOutcome> GetVodTemplateOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetVodTemplateRequest&, const GetVodTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVodTemplateAsyncHandler;
 
 			VodClient(const Credentials &credentials, const ClientConfiguration &configuration);
 			VodClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
@@ -455,6 +520,9 @@ namespace AlibabaCloud
 			DeleteCategoryOutcome deleteCategory(const Model::DeleteCategoryRequest &request)const;
 			void deleteCategoryAsync(const Model::DeleteCategoryRequest& request, const DeleteCategoryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteCategoryOutcomeCallable deleteCategoryCallable(const Model::DeleteCategoryRequest& request) const;
+			CreateUploadAttachedMediaOutcome createUploadAttachedMedia(const Model::CreateUploadAttachedMediaRequest &request)const;
+			void createUploadAttachedMediaAsync(const Model::CreateUploadAttachedMediaRequest& request, const CreateUploadAttachedMediaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateUploadAttachedMediaOutcomeCallable createUploadAttachedMediaCallable(const Model::CreateUploadAttachedMediaRequest& request) const;
 			ListAIVideoSummaryJobOutcome listAIVideoSummaryJob(const Model::ListAIVideoSummaryJobRequest &request)const;
 			void listAIVideoSummaryJobAsync(const Model::ListAIVideoSummaryJobRequest& request, const ListAIVideoSummaryJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListAIVideoSummaryJobOutcomeCallable listAIVideoSummaryJobCallable(const Model::ListAIVideoSummaryJobRequest& request) const;
@@ -473,6 +541,9 @@ namespace AlibabaCloud
 			UpdateEditingProjectOutcome updateEditingProject(const Model::UpdateEditingProjectRequest &request)const;
 			void updateEditingProjectAsync(const Model::UpdateEditingProjectRequest& request, const UpdateEditingProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateEditingProjectOutcomeCallable updateEditingProjectCallable(const Model::UpdateEditingProjectRequest& request) const;
+			SetDefaultVodTemplateOutcome setDefaultVodTemplate(const Model::SetDefaultVodTemplateRequest &request)const;
+			void setDefaultVodTemplateAsync(const Model::SetDefaultVodTemplateRequest& request, const SetDefaultVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SetDefaultVodTemplateOutcomeCallable setDefaultVodTemplateCallable(const Model::SetDefaultVodTemplateRequest& request) const;
 			RefreshObjectCachesOutcome refreshObjectCaches(const Model::RefreshObjectCachesRequest &request)const;
 			void refreshObjectCachesAsync(const Model::RefreshObjectCachesRequest& request, const RefreshObjectCachesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RefreshObjectCachesOutcomeCallable refreshObjectCachesCallable(const Model::RefreshObjectCachesRequest& request) const;
@@ -485,6 +556,9 @@ namespace AlibabaCloud
 			GetAuditHistoryOutcome getAuditHistory(const Model::GetAuditHistoryRequest &request)const;
 			void getAuditHistoryAsync(const Model::GetAuditHistoryRequest& request, const GetAuditHistoryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetAuditHistoryOutcomeCallable getAuditHistoryCallable(const Model::GetAuditHistoryRequest& request) const;
+			GetMediaDNAResultOutcome getMediaDNAResult(const Model::GetMediaDNAResultRequest &request)const;
+			void getMediaDNAResultAsync(const Model::GetMediaDNAResultRequest& request, const GetMediaDNAResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetMediaDNAResultOutcomeCallable getMediaDNAResultCallable(const Model::GetMediaDNAResultRequest& request) const;
 			GetVideoInfoOutcome getVideoInfo(const Model::GetVideoInfoRequest &request)const;
 			void getVideoInfoAsync(const Model::GetVideoInfoRequest& request, const GetVideoInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetVideoInfoOutcomeCallable getVideoInfoCallable(const Model::GetVideoInfoRequest& request) const;
@@ -536,9 +610,15 @@ namespace AlibabaCloud
 			GetAuditResultOutcome getAuditResult(const Model::GetAuditResultRequest &request)const;
 			void getAuditResultAsync(const Model::GetAuditResultRequest& request, const GetAuditResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetAuditResultOutcomeCallable getAuditResultCallable(const Model::GetAuditResultRequest& request) const;
+			DeleteVodTemplateOutcome deleteVodTemplate(const Model::DeleteVodTemplateRequest &request)const;
+			void deleteVodTemplateAsync(const Model::DeleteVodTemplateRequest& request, const DeleteVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteVodTemplateOutcomeCallable deleteVodTemplateCallable(const Model::DeleteVodTemplateRequest& request) const;
 			SubmitPreprocessJobsOutcome submitPreprocessJobs(const Model::SubmitPreprocessJobsRequest &request)const;
 			void submitPreprocessJobsAsync(const Model::SubmitPreprocessJobsRequest& request, const SubmitPreprocessJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitPreprocessJobsOutcomeCallable submitPreprocessJobsCallable(const Model::SubmitPreprocessJobsRequest& request) const;
+			ListVodTemplateOutcome listVodTemplate(const Model::ListVodTemplateRequest &request)const;
+			void listVodTemplateAsync(const Model::ListVodTemplateRequest& request, const ListVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVodTemplateOutcomeCallable listVodTemplateCallable(const Model::ListVodTemplateRequest& request) const;
 			GetVideoPlayInfoOutcome getVideoPlayInfo(const Model::GetVideoPlayInfoRequest &request)const;
 			void getVideoPlayInfoAsync(const Model::GetVideoPlayInfoRequest& request, const GetVideoPlayInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetVideoPlayInfoOutcomeCallable getVideoPlayInfoCallable(const Model::GetVideoPlayInfoRequest& request) const;
@@ -563,6 +643,9 @@ namespace AlibabaCloud
 			UpdateImageInfosOutcome updateImageInfos(const Model::UpdateImageInfosRequest &request)const;
 			void updateImageInfosAsync(const Model::UpdateImageInfosRequest& request, const UpdateImageInfosAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateImageInfosOutcomeCallable updateImageInfosCallable(const Model::UpdateImageInfosRequest& request) const;
+			DeleteWorkFlowOutcome deleteWorkFlow(const Model::DeleteWorkFlowRequest &request)const;
+			void deleteWorkFlowAsync(const Model::DeleteWorkFlowRequest& request, const DeleteWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteWorkFlowOutcomeCallable deleteWorkFlowCallable(const Model::DeleteWorkFlowRequest& request) const;
 			SearchMediaOutcome searchMedia(const Model::SearchMediaRequest &request)const;
 			void searchMediaAsync(const Model::SearchMediaRequest& request, const SearchMediaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SearchMediaOutcomeCallable searchMediaCallable(const Model::SearchMediaRequest& request) const;
@@ -614,12 +697,18 @@ namespace AlibabaCloud
 			GetImageInfoOutcome getImageInfo(const Model::GetImageInfoRequest &request)const;
 			void getImageInfoAsync(const Model::GetImageInfoRequest& request, const GetImageInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetImageInfoOutcomeCallable getImageInfoCallable(const Model::GetImageInfoRequest& request) const;
+			ListWorkFlowOutcome listWorkFlow(const Model::ListWorkFlowRequest &request)const;
+			void listWorkFlowAsync(const Model::ListWorkFlowRequest& request, const ListWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListWorkFlowOutcomeCallable listWorkFlowCallable(const Model::ListWorkFlowRequest& request) const;
 			GetMessageCallbackOutcome getMessageCallback(const Model::GetMessageCallbackRequest &request)const;
 			void getMessageCallbackAsync(const Model::GetMessageCallbackRequest& request, const GetMessageCallbackAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetMessageCallbackOutcomeCallable getMessageCallbackCallable(const Model::GetMessageCallbackRequest& request) const;
 			ListLiveRecordVideoOutcome listLiveRecordVideo(const Model::ListLiveRecordVideoRequest &request)const;
 			void listLiveRecordVideoAsync(const Model::ListLiveRecordVideoRequest& request, const ListLiveRecordVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListLiveRecordVideoOutcomeCallable listLiveRecordVideoCallable(const Model::ListLiveRecordVideoRequest& request) const;
+			UpdateVodTemplateOutcome updateVodTemplate(const Model::UpdateVodTemplateRequest &request)const;
+			void updateVodTemplateAsync(const Model::UpdateVodTemplateRequest& request, const UpdateVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateVodTemplateOutcomeCallable updateVodTemplateCallable(const Model::UpdateVodTemplateRequest& request) const;
 			ListAIVideoCategoryJobOutcome listAIVideoCategoryJob(const Model::ListAIVideoCategoryJobRequest &request)const;
 			void listAIVideoCategoryJobAsync(const Model::ListAIVideoCategoryJobRequest& request, const ListAIVideoCategoryJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListAIVideoCategoryJobOutcomeCallable listAIVideoCategoryJobCallable(const Model::ListAIVideoCategoryJobRequest& request) const;
@@ -632,6 +721,9 @@ namespace AlibabaCloud
 			DeleteStreamOutcome deleteStream(const Model::DeleteStreamRequest &request)const;
 			void deleteStreamAsync(const Model::DeleteStreamRequest& request, const DeleteStreamAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteStreamOutcomeCallable deleteStreamCallable(const Model::DeleteStreamRequest& request) const;
+			UpdateWorkFlowOutcome updateWorkFlow(const Model::UpdateWorkFlowRequest &request)const;
+			void updateWorkFlowAsync(const Model::UpdateWorkFlowRequest& request, const UpdateWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateWorkFlowOutcomeCallable updateWorkFlowCallable(const Model::UpdateWorkFlowRequest& request) const;
 			UploadMediaByURLOutcome uploadMediaByURL(const Model::UploadMediaByURLRequest &request)const;
 			void uploadMediaByURLAsync(const Model::UploadMediaByURLRequest& request, const UploadMediaByURLAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UploadMediaByURLOutcomeCallable uploadMediaByURLCallable(const Model::UploadMediaByURLRequest& request) const;
@@ -647,9 +739,15 @@ namespace AlibabaCloud
 			GetPlayInfoOutcome getPlayInfo(const Model::GetPlayInfoRequest &request)const;
 			void getPlayInfoAsync(const Model::GetPlayInfoRequest& request, const GetPlayInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetPlayInfoOutcomeCallable getPlayInfoCallable(const Model::GetPlayInfoRequest& request) const;
+			GetWorkFlowOutcome getWorkFlow(const Model::GetWorkFlowRequest &request)const;
+			void getWorkFlowAsync(const Model::GetWorkFlowRequest& request, const GetWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetWorkFlowOutcomeCallable getWorkFlowCallable(const Model::GetWorkFlowRequest& request) const;
 			SubmitTranscodeJobsOutcome submitTranscodeJobs(const Model::SubmitTranscodeJobsRequest &request)const;
 			void submitTranscodeJobsAsync(const Model::SubmitTranscodeJobsRequest& request, const SubmitTranscodeJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitTranscodeJobsOutcomeCallable submitTranscodeJobsCallable(const Model::SubmitTranscodeJobsRequest& request) const;
+			AddWorkFlowOutcome addWorkFlow(const Model::AddWorkFlowRequest &request)const;
+			void addWorkFlowAsync(const Model::AddWorkFlowRequest& request, const AddWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddWorkFlowOutcomeCallable addWorkFlowCallable(const Model::AddWorkFlowRequest& request) const;
 			CreateUploadVideoOutcome createUploadVideo(const Model::CreateUploadVideoRequest &request)const;
 			void createUploadVideoAsync(const Model::CreateUploadVideoRequest& request, const CreateUploadVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateUploadVideoOutcomeCallable createUploadVideoCallable(const Model::CreateUploadVideoRequest& request) const;
@@ -686,12 +784,18 @@ namespace AlibabaCloud
 			DeleteVideoOutcome deleteVideo(const Model::DeleteVideoRequest &request)const;
 			void deleteVideoAsync(const Model::DeleteVideoRequest& request, const DeleteVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteVideoOutcomeCallable deleteVideoCallable(const Model::DeleteVideoRequest& request) const;
+			AddVodTemplateOutcome addVodTemplate(const Model::AddVodTemplateRequest &request)const;
+			void addVodTemplateAsync(const Model::AddVodTemplateRequest& request, const AddVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddVodTemplateOutcomeCallable addVodTemplateCallable(const Model::AddVodTemplateRequest& request) const;
 			SubmitAIVideoCoverJobOutcome submitAIVideoCoverJob(const Model::SubmitAIVideoCoverJobRequest &request)const;
 			void submitAIVideoCoverJobAsync(const Model::SubmitAIVideoCoverJobRequest& request, const SubmitAIVideoCoverJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitAIVideoCoverJobOutcomeCallable submitAIVideoCoverJobCallable(const Model::SubmitAIVideoCoverJobRequest& request) const;
 			DescribePlayUserAvgOutcome describePlayUserAvg(const Model::DescribePlayUserAvgRequest &request)const;
 			void describePlayUserAvgAsync(const Model::DescribePlayUserAvgRequest& request, const DescribePlayUserAvgAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribePlayUserAvgOutcomeCallable describePlayUserAvgCallable(const Model::DescribePlayUserAvgRequest& request) const;
+			GetVodTemplateOutcome getVodTemplate(const Model::GetVodTemplateRequest &request)const;
+			void getVodTemplateAsync(const Model::GetVodTemplateRequest& request, const GetVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetVodTemplateOutcomeCallable getVodTemplateCallable(const Model::GetVodTemplateRequest& request) const;
 	
 		private:
 			std::shared_ptr<EndpointProvider> endpointProvider_;

BIN
vod/include/alibabacloud/vod/VodExport.h


+ 66 - 0
vod/include/alibabacloud/vod/model/AddCategoryRequest.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT AddVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				AddVodTemplateRequest();
+				~AddVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getTemplateConfig()const;
+				void setTemplateConfig(const std::string& templateConfig);
+				std::string getTemplateType()const;
+				void setTemplateType(const std::string& templateType);
+				std::string getName()const;
+				void setName(const std::string& name);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getSubTemplateType()const;
+				void setSubTemplateType(const std::string& subTemplateType);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string templateConfig_;
+				std::string templateType_;
+				std::string name_;
+				long ownerId_;
+				std::string subTemplateType_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATEREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/AddVodTemplateResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT AddVodTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				AddVodTemplateResult();
+				explicit AddVodTemplateResult(const std::string &payload);
+				~AddVodTemplateResult();
+				std::string getVodTemplateId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string vodTemplateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDVODTEMPLATERESULT_H_

+ 60 - 0
vod/include/alibabacloud/vod/model/AddWatermarkRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT AddWorkFlowRequest : public RpcServiceRequest
+			{
+
+			public:
+				AddWorkFlowRequest();
+				~AddWorkFlowRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getActionList()const;
+				void setActionList(const std::string& actionList);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string name_;
+				std::string actionList_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/AddWorkFlowResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT AddWorkFlowResult : public ServiceResult
+			{
+			public:
+
+
+				AddWorkFlowResult();
+				explicit AddWorkFlowResult(const std::string &payload);
+				~AddWorkFlowResult();
+				std::string getWorkFlowId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_ADDWORKFLOWRESULT_H_

+ 84 - 0
vod/include/alibabacloud/vod/model/CreateAuditRequest.h

@@ -0,0 +1,84 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIAREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIAREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT CreateUploadAttachedMediaRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateUploadAttachedMediaRequest();
+				~CreateUploadAttachedMediaRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getDescription()const;
+				void setDescription(const std::string& description);
+				std::string getFileSize()const;
+				void setFileSize(const std::string& fileSize);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getTitle()const;
+				void setTitle(const std::string& title);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getBusinessType()const;
+				void setBusinessType(const std::string& businessType);
+				std::string getTags()const;
+				void setTags(const std::string& tags);
+				std::string getStorageLocation()const;
+				void setStorageLocation(const std::string& storageLocation);
+				std::string getMediaExt()const;
+				void setMediaExt(const std::string& mediaExt);
+				std::string getFileName()const;
+				void setFileName(const std::string& fileName);
+				int getCateId()const;
+				void setCateId(int cateId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string description_;
+				std::string fileSize_;
+				long ownerId_;
+				std::string title_;
+				std::string accessKeyId_;
+				std::string businessType_;
+				std::string tags_;
+				std::string storageLocation_;
+				std::string mediaExt_;
+				std::string fileName_;
+				int cateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIAREQUEST_H_

+ 59 - 0
vod/include/alibabacloud/vod/model/CreateUploadAttachedMediaResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIARESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIARESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT CreateUploadAttachedMediaResult : public ServiceResult
+			{
+			public:
+
+
+				CreateUploadAttachedMediaResult();
+				explicit CreateUploadAttachedMediaResult(const std::string &payload);
+				~CreateUploadAttachedMediaResult();
+				std::string getFileURL()const;
+				std::string getMediaURL()const;
+				std::string getUploadAddress()const;
+				std::string getMediaId()const;
+				std::string getUploadAuth()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string fileURL_;
+				std::string mediaURL_;
+				std::string uploadAddress_;
+				std::string mediaId_;
+				std::string uploadAuth_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_CREATEUPLOADATTACHEDMEDIARESULT_H_

+ 3 - 0
vod/include/alibabacloud/vod/model/CreateUploadImageRequest.h

@@ -45,6 +45,8 @@ namespace AlibabaCloud
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
 				std::string getImageExt()const;
 				void setImageExt(const std::string& imageExt);
+				long getCateId()const;
+				void setCateId(long cateId);
 				long getOwnerId()const;
 				void setOwnerId(long ownerId);
 				std::string getTitle()const;
@@ -62,6 +64,7 @@ namespace AlibabaCloud
 				std::string originalFileName_;
 				std::string resourceOwnerAccount_;
 				std::string imageExt_;
+				long cateId_;
 				long ownerId_;
 				std::string title_;
 				std::string accessKeyId_;

+ 57 - 0
vod/include/alibabacloud/vod/model/CreateUploadImageResult.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DeleteVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteVodTemplateRequest();
+				~DeleteVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getVodTemplateId()const;
+				void setVodTemplateId(const std::string& vodTemplateId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string vodTemplateId_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATEREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/DeleteVodTemplateResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DeleteVodTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteVodTemplateResult();
+				explicit DeleteVodTemplateResult(const std::string &payload);
+				~DeleteVodTemplateResult();
+				std::string getVodTemplateId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string vodTemplateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEVODTEMPLATERESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/DeleteWatermarkRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DeleteWorkFlowRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteWorkFlowRequest();
+				~DeleteWorkFlowRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getWorkFlowId()const;
+				void setWorkFlowId(const std::string& workFlowId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				long ownerId_;
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/DeleteWorkFlowResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DeleteWorkFlowResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteWorkFlowResult();
+				explicit DeleteWorkFlowResult(const std::string &payload);
+				~DeleteWorkFlowResult();
+				std::string getWorkFlowId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DELETEWORKFLOWRESULT_H_

+ 8 - 0
vod/include/alibabacloud/vod/model/DescribeCdnDomainLogsRequest.h

@@ -36,12 +36,20 @@ namespace AlibabaCloud
 				{
 					struct Mezzanine
 					{
+						std::string fileURL;
 						std::string originalFileName;
+						int height;
+						int width;
+						std::string fileSize;
 					};
+					std::string description;
 					Mezzanine mezzanine;
 					std::string imageId;
 					std::string creationTime;
 					std::string title;
+					long cateId;
+					std::string cateName;
+					std::string storageLocation;
 					std::string tags;
 					std::string uRL;
 					std::string imageType;

+ 63 - 0
vod/include/alibabacloud/vod/model/GetMediaDNAResultRequest.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetMediaDNAResultRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetMediaDNAResultRequest();
+				~GetMediaDNAResultRequest();
+
+				std::string getResourceOwnerId()const;
+				void setResourceOwnerId(const std::string& resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getOwnerId()const;
+				void setOwnerId(const std::string& ownerId);
+				std::string getMediaId()const;
+				void setMediaId(const std::string& mediaId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string ownerId_;
+				std::string mediaId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTREQUEST_H_

+ 76 - 0
vod/include/alibabacloud/vod/model/GetMediaDNAResultResult.h

@@ -0,0 +1,76 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetMediaDNAResultResult : public ServiceResult
+			{
+			public:
+				struct DNAResult
+				{
+					struct VideoDNAItem
+					{
+						struct DetailItem
+						{
+							struct Input
+							{
+								std::string start;
+								std::string duration;
+							};
+							struct Duplication
+							{
+								std::string start;
+								std::string duration;
+							};
+							Input input;
+							Duplication duplication;
+						};
+						std::string similarity;
+						std::string primaryKey;
+						std::vector<VideoDNAItem::DetailItem> detail;
+					};
+					std::vector<VideoDNAItem> videoDNA;
+				};
+
+
+				GetMediaDNAResultResult();
+				explicit GetMediaDNAResultResult(const std::string &payload);
+				~GetMediaDNAResultResult();
+				DNAResult getDNAResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				DNAResult dNAResult_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETMEDIADNARESULTRESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/GetMessageCallbackRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetVodTemplateRequest();
+				~GetVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getVodTemplateId()const;
+				void setVodTemplateId(const std::string& vodTemplateId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string vodTemplateId_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATEREQUEST_H_

+ 63 - 0
vod/include/alibabacloud/vod/model/GetVodTemplateResult.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetVodTemplateResult : public ServiceResult
+			{
+			public:
+				struct VodTemplateInfo
+				{
+					std::string isDefault;
+					std::string modifyTime;
+					std::string creationTime;
+					std::string templateConfig;
+					std::string templateType;
+					std::string vodTemplateId;
+					std::string subTemplateType;
+					std::string source;
+					std::string name;
+				};
+
+
+				GetVodTemplateResult();
+				explicit GetVodTemplateResult(const std::string &payload);
+				~GetVodTemplateResult();
+				VodTemplateInfo getVodTemplateInfo()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				VodTemplateInfo vodTemplateInfo_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETVODTEMPLATERESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/GetWatermarkRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETWORKFLOWREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETWORKFLOWREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetWorkFlowRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetWorkFlowRequest();
+				~GetWorkFlowRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getWorkFlowId()const;
+				void setWorkFlowId(const std::string& workFlowId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				long ownerId_;
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETWORKFLOWREQUEST_H_

+ 59 - 0
vod/include/alibabacloud/vod/model/GetWorkFlowResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_GETWORKFLOWRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETWORKFLOWRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetWorkFlowResult : public ServiceResult
+			{
+			public:
+				struct WorkFlowInfo
+				{
+					std::string workFlowId;
+					std::string modifyTime;
+					std::string creationTime;
+					std::string actionList;
+					std::string name;
+				};
+
+
+				GetWorkFlowResult();
+				explicit GetWorkFlowResult(const std::string &payload);
+				~GetWorkFlowResult();
+				WorkFlowInfo getWorkFlowInfo()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				WorkFlowInfo workFlowInfo_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETWORKFLOWRESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/ListAIASRJobRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListVodTemplateRequest();
+				~ListVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getTemplateType()const;
+				void setTemplateType(const std::string& templateType);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string templateType_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATEREQUEST_H_

+ 63 - 0
vod/include/alibabacloud/vod/model/ListVodTemplateResult.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListVodTemplateResult : public ServiceResult
+			{
+			public:
+				struct VodTemplateInfo
+				{
+					std::string isDefault;
+					std::string modifyTime;
+					std::string creationTime;
+					std::string templateConfig;
+					std::string templateType;
+					std::string vodTemplateId;
+					std::string subTemplateType;
+					std::string source;
+					std::string name;
+				};
+
+
+				ListVodTemplateResult();
+				explicit ListVodTemplateResult(const std::string &payload);
+				~ListVodTemplateResult();
+				std::vector<VodTemplateInfo> getVodTemplateInfoList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<VodTemplateInfo> vodTemplateInfoList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTVODTEMPLATERESULT_H_

+ 54 - 0
vod/include/alibabacloud/vod/model/ListWatermarkRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListWorkFlowRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListWorkFlowRequest();
+				~ListWorkFlowRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWREQUEST_H_

+ 59 - 0
vod/include/alibabacloud/vod/model/ListWorkFlowResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListWorkFlowResult : public ServiceResult
+			{
+			public:
+				struct WorkFlowInfo
+				{
+					std::string workFlowId;
+					std::string modifyTime;
+					std::string creationTime;
+					std::string actionList;
+					std::string name;
+				};
+
+
+				ListWorkFlowResult();
+				explicit ListWorkFlowResult(const std::string &payload);
+				~ListWorkFlowResult();
+				std::vector<WorkFlowInfo> getWorkFlowInfoList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<WorkFlowInfo> workFlowInfoList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTWORKFLOWRESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/OpenVodServiceRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT SetDefaultVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				SetDefaultVodTemplateRequest();
+				~SetDefaultVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getVodTemplateId()const;
+				void setVodTemplateId(const std::string& vodTemplateId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string vodTemplateId_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATEREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/SetDefaultVodTemplateResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT SetDefaultVodTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				SetDefaultVodTemplateResult();
+				explicit SetDefaultVodTemplateResult(const std::string &payload);
+				~SetDefaultVodTemplateResult();
+				std::string getVodTemplateId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string vodTemplateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_SETDEFAULTVODTEMPLATERESULT_H_

+ 15 - 12
vod/include/alibabacloud/vod/model/SetDefaultWatermarkRequest.h

@@ -37,38 +37,41 @@ namespace AlibabaCloud
 
 				long getResourceOwnerId()const;
 				void setResourceOwnerId(long resourceOwnerId);
-				long getSpecifiedOffsetTime()const;
-				void setSpecifiedOffsetTime(long specifiedOffsetTime);
 				std::string getResourceOwnerAccount()const;
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
-				std::string getWidth()const;
-				void setWidth(const std::string& width);
 				long getCount()const;
 				void setCount(long count);
 				std::string getVideoId()const;
 				void setVideoId(const std::string& videoId);
-				long getInterval()const;
-				void setInterval(long interval);
 				long getOwnerId()const;
 				void setOwnerId(long ownerId);
-				std::string getSpriteSnapshotConfig()const;
-				void setSpriteSnapshotConfig(const std::string& spriteSnapshotConfig);
 				std::string getAccessKeyId()const;
 				void setAccessKeyId(const std::string& accessKeyId);
+				long getSpecifiedOffsetTime()const;
+				void setSpecifiedOffsetTime(long specifiedOffsetTime);
+				std::string getWidth()const;
+				void setWidth(const std::string& width);
+				long getInterval()const;
+				void setInterval(long interval);
+				std::string getSpriteSnapshotConfig()const;
+				void setSpriteSnapshotConfig(const std::string& spriteSnapshotConfig);
+				std::string getSnapshotTemplateId()const;
+				void setSnapshotTemplateId(const std::string& snapshotTemplateId);
 				std::string getHeight()const;
 				void setHeight(const std::string& height);
 
             private:
 				long resourceOwnerId_;
-				long specifiedOffsetTime_;
 				std::string resourceOwnerAccount_;
-				std::string width_;
 				long count_;
 				std::string videoId_;
-				long interval_;
 				long ownerId_;
-				std::string spriteSnapshotConfig_;
 				std::string accessKeyId_;
+				long specifiedOffsetTime_;
+				std::string width_;
+				long interval_;
+				std::string spriteSnapshotConfig_;
+				std::string snapshotTemplateId_;
 				std::string height_;
 
 			};

+ 63 - 0
vod/include/alibabacloud/vod/model/SubmitSnapshotJobResult.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT UpdateVodTemplateRequest : public RpcServiceRequest
+			{
+
+			public:
+				UpdateVodTemplateRequest();
+				~UpdateVodTemplateRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getTemplateConfig()const;
+				void setTemplateConfig(const std::string& templateConfig);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getVodTemplateId()const;
+				void setVodTemplateId(const std::string& vodTemplateId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string templateConfig_;
+				std::string name_;
+				std::string vodTemplateId_;
+				long ownerId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATEREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/UpdateVodTemplateResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATERESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT UpdateVodTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateVodTemplateResult();
+				explicit UpdateVodTemplateResult(const std::string &payload);
+				~UpdateVodTemplateResult();
+				std::string getVodTemplateId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string vodTemplateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_UPDATEVODTEMPLATERESULT_H_

+ 63 - 0
vod/include/alibabacloud/vod/model/UpdateWatermarkRequest.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT UpdateWorkFlowRequest : public RpcServiceRequest
+			{
+
+			public:
+				UpdateWorkFlowRequest();
+				~UpdateWorkFlowRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getActionList()const;
+				void setActionList(const std::string& actionList);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getWorkFlowId()const;
+				void setWorkFlowId(const std::string& workFlowId);
+
+            private:
+				long resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string name_;
+				std::string actionList_;
+				long ownerId_;
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWREQUEST_H_

+ 51 - 0
vod/include/alibabacloud/vod/model/UpdateWorkFlowResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT UpdateWorkFlowResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateWorkFlowResult();
+				explicit UpdateWorkFlowResult(const std::string &payload);
+				~UpdateWorkFlowResult();
+				std::string getWorkFlowId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string workFlowId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_UPDATEWORKFLOWRESULT_H_

BIN
vod/include/alibabacloud/vod/model/UploadMediaByURLRequest.h


+ 471 - 4
vod/src/VodClient.cc

@@ -31,21 +31,21 @@ VodClient::VodClient(const Credentials &credentials, const ClientConfiguration &
 	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
 {
 	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
-	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vod");
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
 }
 
 VodClient::VodClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
 	RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
 {
 	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
-	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vod");
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
 }
 
 VodClient::VodClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
 	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
 {
 	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
-	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "vod");
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
 }
 
 VodClient::~VodClient()
@@ -159,6 +159,42 @@ VodClient::DeleteCategoryOutcomeCallable VodClient::deleteCategoryCallable(const
 	return task->get_future();
 }
 
+VodClient::CreateUploadAttachedMediaOutcome VodClient::createUploadAttachedMedia(const CreateUploadAttachedMediaRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateUploadAttachedMediaOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateUploadAttachedMediaOutcome(CreateUploadAttachedMediaResult(outcome.result()));
+	else
+		return CreateUploadAttachedMediaOutcome(outcome.error());
+}
+
+void VodClient::createUploadAttachedMediaAsync(const CreateUploadAttachedMediaRequest& request, const CreateUploadAttachedMediaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createUploadAttachedMedia(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::CreateUploadAttachedMediaOutcomeCallable VodClient::createUploadAttachedMediaCallable(const CreateUploadAttachedMediaRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateUploadAttachedMediaOutcome()>>(
+			[this, request]()
+			{
+			return this->createUploadAttachedMedia(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::ListAIVideoSummaryJobOutcome VodClient::listAIVideoSummaryJob(const ListAIVideoSummaryJobRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -375,6 +411,42 @@ VodClient::UpdateEditingProjectOutcomeCallable VodClient::updateEditingProjectCa
 	return task->get_future();
 }
 
+VodClient::SetDefaultVodTemplateOutcome VodClient::setDefaultVodTemplate(const SetDefaultVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SetDefaultVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SetDefaultVodTemplateOutcome(SetDefaultVodTemplateResult(outcome.result()));
+	else
+		return SetDefaultVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::setDefaultVodTemplateAsync(const SetDefaultVodTemplateRequest& request, const SetDefaultVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, setDefaultVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::SetDefaultVodTemplateOutcomeCallable VodClient::setDefaultVodTemplateCallable(const SetDefaultVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SetDefaultVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->setDefaultVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::RefreshObjectCachesOutcome VodClient::refreshObjectCaches(const RefreshObjectCachesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -519,6 +591,42 @@ VodClient::GetAuditHistoryOutcomeCallable VodClient::getAuditHistoryCallable(con
 	return task->get_future();
 }
 
+VodClient::GetMediaDNAResultOutcome VodClient::getMediaDNAResult(const GetMediaDNAResultRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetMediaDNAResultOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetMediaDNAResultOutcome(GetMediaDNAResultResult(outcome.result()));
+	else
+		return GetMediaDNAResultOutcome(outcome.error());
+}
+
+void VodClient::getMediaDNAResultAsync(const GetMediaDNAResultRequest& request, const GetMediaDNAResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getMediaDNAResult(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetMediaDNAResultOutcomeCallable VodClient::getMediaDNAResultCallable(const GetMediaDNAResultRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetMediaDNAResultOutcome()>>(
+			[this, request]()
+			{
+			return this->getMediaDNAResult(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetVideoInfoOutcome VodClient::getVideoInfo(const GetVideoInfoRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -950,7 +1058,6 @@ VodClient::ListAIVideoCensorJobOutcomeCallable VodClient::listAIVideoCensorJobCa
 	asyncExecute(new Runnable([task]() { (*task)(); }));
 	return task->get_future();
 }
-
 
 VodClient::DescribeRefreshQuotaOutcome VodClient::describeRefreshQuota(const DescribeRefreshQuotaRequest &request) const
 {
@@ -1132,6 +1239,42 @@ VodClient::GetAuditResultOutcomeCallable VodClient::getAuditResultCallable(const
 	return task->get_future();
 }
 
+VodClient::DeleteVodTemplateOutcome VodClient::deleteVodTemplate(const DeleteVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteVodTemplateOutcome(DeleteVodTemplateResult(outcome.result()));
+	else
+		return DeleteVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::deleteVodTemplateAsync(const DeleteVodTemplateRequest& request, const DeleteVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DeleteVodTemplateOutcomeCallable VodClient::deleteVodTemplateCallable(const DeleteVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SubmitPreprocessJobsOutcome VodClient::submitPreprocessJobs(const SubmitPreprocessJobsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1168,6 +1311,42 @@ VodClient::SubmitPreprocessJobsOutcomeCallable VodClient::submitPreprocessJobsCa
 	return task->get_future();
 }
 
+VodClient::ListVodTemplateOutcome VodClient::listVodTemplate(const ListVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListVodTemplateOutcome(ListVodTemplateResult(outcome.result()));
+	else
+		return ListVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::listVodTemplateAsync(const ListVodTemplateRequest& request, const ListVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::ListVodTemplateOutcomeCallable VodClient::listVodTemplateCallable(const ListVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->listVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetVideoPlayInfoOutcome VodClient::getVideoPlayInfo(const GetVideoPlayInfoRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1456,6 +1635,42 @@ VodClient::UpdateImageInfosOutcomeCallable VodClient::updateImageInfosCallable(c
 	return task->get_future();
 }
 
+VodClient::DeleteWorkFlowOutcome VodClient::deleteWorkFlow(const DeleteWorkFlowRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteWorkFlowOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteWorkFlowOutcome(DeleteWorkFlowResult(outcome.result()));
+	else
+		return DeleteWorkFlowOutcome(outcome.error());
+}
+
+void VodClient::deleteWorkFlowAsync(const DeleteWorkFlowRequest& request, const DeleteWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteWorkFlow(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DeleteWorkFlowOutcomeCallable VodClient::deleteWorkFlowCallable(const DeleteWorkFlowRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteWorkFlowOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteWorkFlow(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SearchMediaOutcome VodClient::searchMedia(const SearchMediaRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2068,6 +2283,42 @@ VodClient::GetImageInfoOutcomeCallable VodClient::getImageInfoCallable(const Get
 	return task->get_future();
 }
 
+VodClient::ListWorkFlowOutcome VodClient::listWorkFlow(const ListWorkFlowRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListWorkFlowOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListWorkFlowOutcome(ListWorkFlowResult(outcome.result()));
+	else
+		return ListWorkFlowOutcome(outcome.error());
+}
+
+void VodClient::listWorkFlowAsync(const ListWorkFlowRequest& request, const ListWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listWorkFlow(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::ListWorkFlowOutcomeCallable VodClient::listWorkFlowCallable(const ListWorkFlowRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListWorkFlowOutcome()>>(
+			[this, request]()
+			{
+			return this->listWorkFlow(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetMessageCallbackOutcome VodClient::getMessageCallback(const GetMessageCallbackRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2140,6 +2391,42 @@ VodClient::ListLiveRecordVideoOutcomeCallable VodClient::listLiveRecordVideoCall
 	return task->get_future();
 }
 
+VodClient::UpdateVodTemplateOutcome VodClient::updateVodTemplate(const UpdateVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateVodTemplateOutcome(UpdateVodTemplateResult(outcome.result()));
+	else
+		return UpdateVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::updateVodTemplateAsync(const UpdateVodTemplateRequest& request, const UpdateVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::UpdateVodTemplateOutcomeCallable VodClient::updateVodTemplateCallable(const UpdateVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->updateVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::ListAIVideoCategoryJobOutcome VodClient::listAIVideoCategoryJob(const ListAIVideoCategoryJobRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2284,6 +2571,42 @@ VodClient::DeleteStreamOutcomeCallable VodClient::deleteStreamCallable(const Del
 	return task->get_future();
 }
 
+VodClient::UpdateWorkFlowOutcome VodClient::updateWorkFlow(const UpdateWorkFlowRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateWorkFlowOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateWorkFlowOutcome(UpdateWorkFlowResult(outcome.result()));
+	else
+		return UpdateWorkFlowOutcome(outcome.error());
+}
+
+void VodClient::updateWorkFlowAsync(const UpdateWorkFlowRequest& request, const UpdateWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateWorkFlow(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::UpdateWorkFlowOutcomeCallable VodClient::updateWorkFlowCallable(const UpdateWorkFlowRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateWorkFlowOutcome()>>(
+			[this, request]()
+			{
+			return this->updateWorkFlow(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::UploadMediaByURLOutcome VodClient::uploadMediaByURL(const UploadMediaByURLRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2464,6 +2787,42 @@ VodClient::GetPlayInfoOutcomeCallable VodClient::getPlayInfoCallable(const GetPl
 	return task->get_future();
 }
 
+VodClient::GetWorkFlowOutcome VodClient::getWorkFlow(const GetWorkFlowRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetWorkFlowOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetWorkFlowOutcome(GetWorkFlowResult(outcome.result()));
+	else
+		return GetWorkFlowOutcome(outcome.error());
+}
+
+void VodClient::getWorkFlowAsync(const GetWorkFlowRequest& request, const GetWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getWorkFlow(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetWorkFlowOutcomeCallable VodClient::getWorkFlowCallable(const GetWorkFlowRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetWorkFlowOutcome()>>(
+			[this, request]()
+			{
+			return this->getWorkFlow(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SubmitTranscodeJobsOutcome VodClient::submitTranscodeJobs(const SubmitTranscodeJobsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2500,6 +2859,42 @@ VodClient::SubmitTranscodeJobsOutcomeCallable VodClient::submitTranscodeJobsCall
 	return task->get_future();
 }
 
+VodClient::AddWorkFlowOutcome VodClient::addWorkFlow(const AddWorkFlowRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddWorkFlowOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddWorkFlowOutcome(AddWorkFlowResult(outcome.result()));
+	else
+		return AddWorkFlowOutcome(outcome.error());
+}
+
+void VodClient::addWorkFlowAsync(const AddWorkFlowRequest& request, const AddWorkFlowAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addWorkFlow(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::AddWorkFlowOutcomeCallable VodClient::addWorkFlowCallable(const AddWorkFlowRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddWorkFlowOutcome()>>(
+			[this, request]()
+			{
+			return this->addWorkFlow(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::CreateUploadVideoOutcome VodClient::createUploadVideo(const CreateUploadVideoRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2932,6 +3327,42 @@ VodClient::DeleteVideoOutcomeCallable VodClient::deleteVideoCallable(const Delet
 	return task->get_future();
 }
 
+VodClient::AddVodTemplateOutcome VodClient::addVodTemplate(const AddVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddVodTemplateOutcome(AddVodTemplateResult(outcome.result()));
+	else
+		return AddVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::addVodTemplateAsync(const AddVodTemplateRequest& request, const AddVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::AddVodTemplateOutcomeCallable VodClient::addVodTemplateCallable(const AddVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->addVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SubmitAIVideoCoverJobOutcome VodClient::submitAIVideoCoverJob(const SubmitAIVideoCoverJobRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3004,3 +3435,39 @@ VodClient::DescribePlayUserAvgOutcomeCallable VodClient::describePlayUserAvgCall
 	return task->get_future();
 }
 
+VodClient::GetVodTemplateOutcome VodClient::getVodTemplate(const GetVodTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetVodTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetVodTemplateOutcome(GetVodTemplateResult(outcome.result()));
+	else
+		return GetVodTemplateOutcome(outcome.error());
+}
+
+void VodClient::getVodTemplateAsync(const GetVodTemplateRequest& request, const GetVodTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getVodTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetVodTemplateOutcomeCallable VodClient::getVodTemplateCallable(const GetVodTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetVodTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->getVodTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

BIN
vod/src/model/.DS_Store


+ 104 - 0
vod/src/model/AddCategoryRequest.cc

@@ -0,0 +1,104 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/AddVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::AddVodTemplateRequest;
+
+AddVodTemplateRequest::AddVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "AddVodTemplate")
+{}
+
+AddVodTemplateRequest::~AddVodTemplateRequest()
+{}
+
+long AddVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void AddVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string AddVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void AddVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string AddVodTemplateRequest::getTemplateConfig()const
+{
+	return templateConfig_;
+}
+
+void AddVodTemplateRequest::setTemplateConfig(const std::string& templateConfig)
+{
+	templateConfig_ = templateConfig;
+	setParameter("TemplateConfig", templateConfig);
+}
+
+std::string AddVodTemplateRequest::getTemplateType()const
+{
+	return templateType_;
+}
+
+void AddVodTemplateRequest::setTemplateType(const std::string& templateType)
+{
+	templateType_ = templateType;
+	setParameter("TemplateType", templateType);
+}
+
+std::string AddVodTemplateRequest::getName()const
+{
+	return name_;
+}
+
+void AddVodTemplateRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+long AddVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void AddVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string AddVodTemplateRequest::getSubTemplateType()const
+{
+	return subTemplateType_;
+}
+
+void AddVodTemplateRequest::setSubTemplateType(const std::string& subTemplateType)
+{
+	subTemplateType_ = subTemplateType;
+	setParameter("SubTemplateType", subTemplateType);
+}
+

+ 52 - 0
vod/src/model/AddVodTemplateResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/AddVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+AddVodTemplateResult::AddVodTemplateResult() :
+	ServiceResult()
+{}
+
+AddVodTemplateResult::AddVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddVodTemplateResult::~AddVodTemplateResult()
+{}
+
+void AddVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["VodTemplateId"].isNull())
+		vodTemplateId_ = value["VodTemplateId"].asString();
+
+}
+
+std::string AddVodTemplateResult::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+

+ 82 - 0
vod/src/model/AddWatermarkRequest.cc

@@ -0,0 +1,82 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/AddWorkFlowRequest.h>
+
+using AlibabaCloud::Vod::Model::AddWorkFlowRequest;
+
+AddWorkFlowRequest::AddWorkFlowRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "AddWorkFlow")
+{}
+
+AddWorkFlowRequest::~AddWorkFlowRequest()
+{}
+
+long AddWorkFlowRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void AddWorkFlowRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string AddWorkFlowRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void AddWorkFlowRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string AddWorkFlowRequest::getName()const
+{
+	return name_;
+}
+
+void AddWorkFlowRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+std::string AddWorkFlowRequest::getActionList()const
+{
+	return actionList_;
+}
+
+void AddWorkFlowRequest::setActionList(const std::string& actionList)
+{
+	actionList_ = actionList;
+	setParameter("ActionList", actionList);
+}
+
+long AddWorkFlowRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void AddWorkFlowRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 52 - 0
vod/src/model/AddWorkFlowResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/AddWorkFlowResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+AddWorkFlowResult::AddWorkFlowResult() :
+	ServiceResult()
+{}
+
+AddWorkFlowResult::AddWorkFlowResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddWorkFlowResult::~AddWorkFlowResult()
+{}
+
+void AddWorkFlowResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["WorkFlowId"].isNull())
+		workFlowId_ = value["WorkFlowId"].asString();
+
+}
+
+std::string AddWorkFlowResult::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+

+ 170 - 0
vod/src/model/CreateAuditRequest.cc

@@ -0,0 +1,170 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/CreateUploadAttachedMediaRequest.h>
+
+using AlibabaCloud::Vod::Model::CreateUploadAttachedMediaRequest;
+
+CreateUploadAttachedMediaRequest::CreateUploadAttachedMediaRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "CreateUploadAttachedMedia")
+{}
+
+CreateUploadAttachedMediaRequest::~CreateUploadAttachedMediaRequest()
+{}
+
+long CreateUploadAttachedMediaRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void CreateUploadAttachedMediaRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string CreateUploadAttachedMediaRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void CreateUploadAttachedMediaRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string CreateUploadAttachedMediaRequest::getDescription()const
+{
+	return description_;
+}
+
+void CreateUploadAttachedMediaRequest::setDescription(const std::string& description)
+{
+	description_ = description;
+	setParameter("Description", description);
+}
+
+std::string CreateUploadAttachedMediaRequest::getFileSize()const
+{
+	return fileSize_;
+}
+
+void CreateUploadAttachedMediaRequest::setFileSize(const std::string& fileSize)
+{
+	fileSize_ = fileSize;
+	setParameter("FileSize", fileSize);
+}
+
+long CreateUploadAttachedMediaRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void CreateUploadAttachedMediaRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string CreateUploadAttachedMediaRequest::getTitle()const
+{
+	return title_;
+}
+
+void CreateUploadAttachedMediaRequest::setTitle(const std::string& title)
+{
+	title_ = title;
+	setParameter("Title", title);
+}
+
+std::string CreateUploadAttachedMediaRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void CreateUploadAttachedMediaRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string CreateUploadAttachedMediaRequest::getBusinessType()const
+{
+	return businessType_;
+}
+
+void CreateUploadAttachedMediaRequest::setBusinessType(const std::string& businessType)
+{
+	businessType_ = businessType;
+	setParameter("BusinessType", businessType);
+}
+
+std::string CreateUploadAttachedMediaRequest::getTags()const
+{
+	return tags_;
+}
+
+void CreateUploadAttachedMediaRequest::setTags(const std::string& tags)
+{
+	tags_ = tags;
+	setParameter("Tags", tags);
+}
+
+std::string CreateUploadAttachedMediaRequest::getStorageLocation()const
+{
+	return storageLocation_;
+}
+
+void CreateUploadAttachedMediaRequest::setStorageLocation(const std::string& storageLocation)
+{
+	storageLocation_ = storageLocation;
+	setParameter("StorageLocation", storageLocation);
+}
+
+std::string CreateUploadAttachedMediaRequest::getMediaExt()const
+{
+	return mediaExt_;
+}
+
+void CreateUploadAttachedMediaRequest::setMediaExt(const std::string& mediaExt)
+{
+	mediaExt_ = mediaExt;
+	setParameter("MediaExt", mediaExt);
+}
+
+std::string CreateUploadAttachedMediaRequest::getFileName()const
+{
+	return fileName_;
+}
+
+void CreateUploadAttachedMediaRequest::setFileName(const std::string& fileName)
+{
+	fileName_ = fileName;
+	setParameter("FileName", fileName);
+}
+
+int CreateUploadAttachedMediaRequest::getCateId()const
+{
+	return cateId_;
+}
+
+void CreateUploadAttachedMediaRequest::setCateId(int cateId)
+{
+	cateId_ = cateId;
+	setParameter("CateId", std::to_string(cateId));
+}
+

+ 80 - 0
vod/src/model/CreateUploadAttachedMediaResult.cc

@@ -0,0 +1,80 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/CreateUploadAttachedMediaResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+CreateUploadAttachedMediaResult::CreateUploadAttachedMediaResult() :
+	ServiceResult()
+{}
+
+CreateUploadAttachedMediaResult::CreateUploadAttachedMediaResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateUploadAttachedMediaResult::~CreateUploadAttachedMediaResult()
+{}
+
+void CreateUploadAttachedMediaResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["MediaId"].isNull())
+		mediaId_ = value["MediaId"].asString();
+	if(!value["MediaURL"].isNull())
+		mediaURL_ = value["MediaURL"].asString();
+	if(!value["UploadAddress"].isNull())
+		uploadAddress_ = value["UploadAddress"].asString();
+	if(!value["UploadAuth"].isNull())
+		uploadAuth_ = value["UploadAuth"].asString();
+	if(!value["FileURL"].isNull())
+		fileURL_ = value["FileURL"].asString();
+
+}
+
+std::string CreateUploadAttachedMediaResult::getFileURL()const
+{
+	return fileURL_;
+}
+
+std::string CreateUploadAttachedMediaResult::getMediaURL()const
+{
+	return mediaURL_;
+}
+
+std::string CreateUploadAttachedMediaResult::getUploadAddress()const
+{
+	return uploadAddress_;
+}
+
+std::string CreateUploadAttachedMediaResult::getMediaId()const
+{
+	return mediaId_;
+}
+
+std::string CreateUploadAttachedMediaResult::getUploadAuth()const
+{
+	return uploadAuth_;
+}
+

+ 11 - 0
vod/src/model/CreateUploadImageRequest.cc

@@ -80,6 +80,17 @@ void CreateUploadImageRequest::setImageExt(const std::string& imageExt)
 	setParameter("ImageExt", imageExt);
 }
 
+long CreateUploadImageRequest::getCateId()const
+{
+	return cateId_;
+}
+
+void CreateUploadImageRequest::setCateId(long cateId)
+{
+	cateId_ = cateId;
+	setParameter("CateId", std::to_string(cateId));
+}
+
 long CreateUploadImageRequest::getOwnerId()const
 {
 	return ownerId_;

+ 71 - 0
vod/src/model/CreateUploadImageResult.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/DeleteVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::DeleteVodTemplateRequest;
+
+DeleteVodTemplateRequest::DeleteVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "DeleteVodTemplate")
+{}
+
+DeleteVodTemplateRequest::~DeleteVodTemplateRequest()
+{}
+
+long DeleteVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void DeleteVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string DeleteVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void DeleteVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string DeleteVodTemplateRequest::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+
+void DeleteVodTemplateRequest::setVodTemplateId(const std::string& vodTemplateId)
+{
+	vodTemplateId_ = vodTemplateId;
+	setParameter("VodTemplateId", vodTemplateId);
+}
+
+long DeleteVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DeleteVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 52 - 0
vod/src/model/DeleteVodTemplateResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/DeleteVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DeleteVodTemplateResult::DeleteVodTemplateResult() :
+	ServiceResult()
+{}
+
+DeleteVodTemplateResult::DeleteVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteVodTemplateResult::~DeleteVodTemplateResult()
+{}
+
+void DeleteVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["VodTemplateId"].isNull())
+		vodTemplateId_ = value["VodTemplateId"].asString();
+
+}
+
+std::string DeleteVodTemplateResult::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+

+ 71 - 0
vod/src/model/DeleteWatermarkRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/DeleteWorkFlowRequest.h>
+
+using AlibabaCloud::Vod::Model::DeleteWorkFlowRequest;
+
+DeleteWorkFlowRequest::DeleteWorkFlowRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "DeleteWorkFlow")
+{}
+
+DeleteWorkFlowRequest::~DeleteWorkFlowRequest()
+{}
+
+long DeleteWorkFlowRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void DeleteWorkFlowRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string DeleteWorkFlowRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void DeleteWorkFlowRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+long DeleteWorkFlowRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DeleteWorkFlowRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DeleteWorkFlowRequest::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+
+void DeleteWorkFlowRequest::setWorkFlowId(const std::string& workFlowId)
+{
+	workFlowId_ = workFlowId;
+	setParameter("WorkFlowId", workFlowId);
+}
+

+ 52 - 0
vod/src/model/DeleteWorkFlowResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/DeleteWorkFlowResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DeleteWorkFlowResult::DeleteWorkFlowResult() :
+	ServiceResult()
+{}
+
+DeleteWorkFlowResult::DeleteWorkFlowResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteWorkFlowResult::~DeleteWorkFlowResult()
+{}
+
+void DeleteWorkFlowResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["WorkFlowId"].isNull())
+		workFlowId_ = value["WorkFlowId"].asString();
+
+}
+
+std::string DeleteWorkFlowResult::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+

+ 16 - 0
vod/src/model/DescribeCdnDomainLogsRequest.cc

@@ -53,9 +53,25 @@ void GetImageInfoResult::parse(const std::string &payload)
 		imageInfo_.tags = imageInfoNode["Tags"].asString();
 	if(!imageInfoNode["URL"].isNull())
 		imageInfo_.uRL = imageInfoNode["URL"].asString();
+	if(!imageInfoNode["CateId"].isNull())
+		imageInfo_.cateId = std::stol(imageInfoNode["CateId"].asString());
+	if(!imageInfoNode["CateName"].isNull())
+		imageInfo_.cateName = imageInfoNode["CateName"].asString();
+	if(!imageInfoNode["Description"].isNull())
+		imageInfo_.description = imageInfoNode["Description"].asString();
+	if(!imageInfoNode["StorageLocation"].isNull())
+		imageInfo_.storageLocation = imageInfoNode["StorageLocation"].asString();
 	auto mezzanineNode = imageInfoNode["Mezzanine"];
 	if(!mezzanineNode["OriginalFileName"].isNull())
 		imageInfo_.mezzanine.originalFileName = mezzanineNode["OriginalFileName"].asString();
+	if(!mezzanineNode["FileSize"].isNull())
+		imageInfo_.mezzanine.fileSize = mezzanineNode["FileSize"].asString();
+	if(!mezzanineNode["Width"].isNull())
+		imageInfo_.mezzanine.width = std::stoi(mezzanineNode["Width"].asString());
+	if(!mezzanineNode["Height"].isNull())
+		imageInfo_.mezzanine.height = std::stoi(mezzanineNode["Height"].asString());
+	if(!mezzanineNode["FileURL"].isNull())
+		imageInfo_.mezzanine.fileURL = mezzanineNode["FileURL"].asString();
 
 }
 

+ 93 - 0
vod/src/model/GetMediaDNAResultRequest.cc

@@ -0,0 +1,93 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetMediaDNAResultRequest.h>
+
+using AlibabaCloud::Vod::Model::GetMediaDNAResultRequest;
+
+GetMediaDNAResultRequest::GetMediaDNAResultRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "GetMediaDNAResult")
+{}
+
+GetMediaDNAResultRequest::~GetMediaDNAResultRequest()
+{}
+
+std::string GetMediaDNAResultRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void GetMediaDNAResultRequest::setResourceOwnerId(const std::string& resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", resourceOwnerId);
+}
+
+std::string GetMediaDNAResultRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void GetMediaDNAResultRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string GetMediaDNAResultRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void GetMediaDNAResultRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string GetMediaDNAResultRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void GetMediaDNAResultRequest::setOwnerId(const std::string& ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", ownerId);
+}
+
+std::string GetMediaDNAResultRequest::getMediaId()const
+{
+	return mediaId_;
+}
+
+void GetMediaDNAResultRequest::setMediaId(const std::string& mediaId)
+{
+	mediaId_ = mediaId;
+	setParameter("MediaId", mediaId);
+}
+
+std::string GetMediaDNAResultRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void GetMediaDNAResultRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 77 - 0
vod/src/model/GetMediaDNAResultResult.cc

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetMediaDNAResultResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetMediaDNAResultResult::GetMediaDNAResultResult() :
+	ServiceResult()
+{}
+
+GetMediaDNAResultResult::GetMediaDNAResultResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetMediaDNAResultResult::~GetMediaDNAResultResult()
+{}
+
+void GetMediaDNAResultResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto dNAResultNode = value["DNAResult"];
+	auto allVideoDNA = value["VideoDNA"]["VideoDNAItem"];
+	for (auto value : allVideoDNA)
+	{
+		DNAResult::VideoDNAItem videoDNAItemObject;
+		if(!value["PrimaryKey"].isNull())
+			videoDNAItemObject.primaryKey = value["PrimaryKey"].asString();
+		if(!value["Similarity"].isNull())
+			videoDNAItemObject.similarity = value["Similarity"].asString();
+		auto allDetail = value["Detail"]["DetailItem"];
+		for (auto value : allDetail)
+		{
+			DNAResult::VideoDNAItem::DetailItem detailObject;
+			auto inputNode = value["Input"];
+			if(!inputNode["Start"].isNull())
+				detailObject.input.start = inputNode["Start"].asString();
+			if(!inputNode["Duration"].isNull())
+				detailObject.input.duration = inputNode["Duration"].asString();
+			auto duplicationNode = value["Duplication"];
+			if(!duplicationNode["Start"].isNull())
+				detailObject.duplication.start = duplicationNode["Start"].asString();
+			if(!duplicationNode["Duration"].isNull())
+				detailObject.duplication.duration = duplicationNode["Duration"].asString();
+			videoDNAItemObject.detail.push_back(detailObject);
+		}
+		dNAResult_.videoDNA.push_back(videoDNAItemObject);
+	}
+
+}
+
+GetMediaDNAResultResult::DNAResult GetMediaDNAResultResult::getDNAResult()const
+{
+	return dNAResult_;
+}
+

+ 71 - 0
vod/src/model/GetMessageCallbackRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::GetVodTemplateRequest;
+
+GetVodTemplateRequest::GetVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "GetVodTemplate")
+{}
+
+GetVodTemplateRequest::~GetVodTemplateRequest()
+{}
+
+long GetVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void GetVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string GetVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void GetVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string GetVodTemplateRequest::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+
+void GetVodTemplateRequest::setVodTemplateId(const std::string& vodTemplateId)
+{
+	vodTemplateId_ = vodTemplateId;
+	setParameter("VodTemplateId", vodTemplateId);
+}
+
+long GetVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void GetVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 69 - 0
vod/src/model/GetVodTemplateResult.cc

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetVodTemplateResult::GetVodTemplateResult() :
+	ServiceResult()
+{}
+
+GetVodTemplateResult::GetVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetVodTemplateResult::~GetVodTemplateResult()
+{}
+
+void GetVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto vodTemplateInfoNode = value["VodTemplateInfo"];
+	if(!vodTemplateInfoNode["Name"].isNull())
+		vodTemplateInfo_.name = vodTemplateInfoNode["Name"].asString();
+	if(!vodTemplateInfoNode["VodTemplateId"].isNull())
+		vodTemplateInfo_.vodTemplateId = vodTemplateInfoNode["VodTemplateId"].asString();
+	if(!vodTemplateInfoNode["TemplateType"].isNull())
+		vodTemplateInfo_.templateType = vodTemplateInfoNode["TemplateType"].asString();
+	if(!vodTemplateInfoNode["SubTemplateType"].isNull())
+		vodTemplateInfo_.subTemplateType = vodTemplateInfoNode["SubTemplateType"].asString();
+	if(!vodTemplateInfoNode["Source"].isNull())
+		vodTemplateInfo_.source = vodTemplateInfoNode["Source"].asString();
+	if(!vodTemplateInfoNode["IsDefault"].isNull())
+		vodTemplateInfo_.isDefault = vodTemplateInfoNode["IsDefault"].asString();
+	if(!vodTemplateInfoNode["TemplateConfig"].isNull())
+		vodTemplateInfo_.templateConfig = vodTemplateInfoNode["TemplateConfig"].asString();
+	if(!vodTemplateInfoNode["CreationTime"].isNull())
+		vodTemplateInfo_.creationTime = vodTemplateInfoNode["CreationTime"].asString();
+	if(!vodTemplateInfoNode["ModifyTime"].isNull())
+		vodTemplateInfo_.modifyTime = vodTemplateInfoNode["ModifyTime"].asString();
+
+}
+
+GetVodTemplateResult::VodTemplateInfo GetVodTemplateResult::getVodTemplateInfo()const
+{
+	return vodTemplateInfo_;
+}
+

+ 71 - 0
vod/src/model/GetWatermarkRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetWorkFlowRequest.h>
+
+using AlibabaCloud::Vod::Model::GetWorkFlowRequest;
+
+GetWorkFlowRequest::GetWorkFlowRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "GetWorkFlow")
+{}
+
+GetWorkFlowRequest::~GetWorkFlowRequest()
+{}
+
+long GetWorkFlowRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void GetWorkFlowRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string GetWorkFlowRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void GetWorkFlowRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+long GetWorkFlowRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void GetWorkFlowRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string GetWorkFlowRequest::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+
+void GetWorkFlowRequest::setWorkFlowId(const std::string& workFlowId)
+{
+	workFlowId_ = workFlowId;
+	setParameter("WorkFlowId", workFlowId);
+}
+

+ 61 - 0
vod/src/model/GetWorkFlowResult.cc

@@ -0,0 +1,61 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/GetWorkFlowResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetWorkFlowResult::GetWorkFlowResult() :
+	ServiceResult()
+{}
+
+GetWorkFlowResult::GetWorkFlowResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetWorkFlowResult::~GetWorkFlowResult()
+{}
+
+void GetWorkFlowResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto workFlowInfoNode = value["WorkFlowInfo"];
+	if(!workFlowInfoNode["WorkFlowId"].isNull())
+		workFlowInfo_.workFlowId = workFlowInfoNode["WorkFlowId"].asString();
+	if(!workFlowInfoNode["Name"].isNull())
+		workFlowInfo_.name = workFlowInfoNode["Name"].asString();
+	if(!workFlowInfoNode["ActionList"].isNull())
+		workFlowInfo_.actionList = workFlowInfoNode["ActionList"].asString();
+	if(!workFlowInfoNode["CreationTime"].isNull())
+		workFlowInfo_.creationTime = workFlowInfoNode["CreationTime"].asString();
+	if(!workFlowInfoNode["ModifyTime"].isNull())
+		workFlowInfo_.modifyTime = workFlowInfoNode["ModifyTime"].asString();
+
+}
+
+GetWorkFlowResult::WorkFlowInfo GetWorkFlowResult::getWorkFlowInfo()const
+{
+	return workFlowInfo_;
+}
+

+ 71 - 0
vod/src/model/ListAIASRJobRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/ListVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::ListVodTemplateRequest;
+
+ListVodTemplateRequest::ListVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "ListVodTemplate")
+{}
+
+ListVodTemplateRequest::~ListVodTemplateRequest()
+{}
+
+long ListVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void ListVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string ListVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void ListVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string ListVodTemplateRequest::getTemplateType()const
+{
+	return templateType_;
+}
+
+void ListVodTemplateRequest::setTemplateType(const std::string& templateType)
+{
+	templateType_ = templateType;
+	setParameter("TemplateType", templateType);
+}
+
+long ListVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void ListVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 74 - 0
vod/src/model/ListVodTemplateResult.cc

@@ -0,0 +1,74 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/ListVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+ListVodTemplateResult::ListVodTemplateResult() :
+	ServiceResult()
+{}
+
+ListVodTemplateResult::ListVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListVodTemplateResult::~ListVodTemplateResult()
+{}
+
+void ListVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allVodTemplateInfoList = value["VodTemplateInfoList"]["VodTemplateInfo"];
+	for (auto value : allVodTemplateInfoList)
+	{
+		VodTemplateInfo vodTemplateInfoListObject;
+		if(!value["Name"].isNull())
+			vodTemplateInfoListObject.name = value["Name"].asString();
+		if(!value["VodTemplateId"].isNull())
+			vodTemplateInfoListObject.vodTemplateId = value["VodTemplateId"].asString();
+		if(!value["TemplateType"].isNull())
+			vodTemplateInfoListObject.templateType = value["TemplateType"].asString();
+		if(!value["SubTemplateType"].isNull())
+			vodTemplateInfoListObject.subTemplateType = value["SubTemplateType"].asString();
+		if(!value["Source"].isNull())
+			vodTemplateInfoListObject.source = value["Source"].asString();
+		if(!value["IsDefault"].isNull())
+			vodTemplateInfoListObject.isDefault = value["IsDefault"].asString();
+		if(!value["TemplateConfig"].isNull())
+			vodTemplateInfoListObject.templateConfig = value["TemplateConfig"].asString();
+		if(!value["CreationTime"].isNull())
+			vodTemplateInfoListObject.creationTime = value["CreationTime"].asString();
+		if(!value["ModifyTime"].isNull())
+			vodTemplateInfoListObject.modifyTime = value["ModifyTime"].asString();
+		vodTemplateInfoList_.push_back(vodTemplateInfoListObject);
+	}
+
+}
+
+std::vector<ListVodTemplateResult::VodTemplateInfo> ListVodTemplateResult::getVodTemplateInfoList()const
+{
+	return vodTemplateInfoList_;
+}
+

+ 60 - 0
vod/src/model/ListWatermarkRequest.cc

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/ListWorkFlowRequest.h>
+
+using AlibabaCloud::Vod::Model::ListWorkFlowRequest;
+
+ListWorkFlowRequest::ListWorkFlowRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "ListWorkFlow")
+{}
+
+ListWorkFlowRequest::~ListWorkFlowRequest()
+{}
+
+long ListWorkFlowRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void ListWorkFlowRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string ListWorkFlowRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void ListWorkFlowRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+long ListWorkFlowRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void ListWorkFlowRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 66 - 0
vod/src/model/ListWorkFlowResult.cc

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/ListWorkFlowResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+ListWorkFlowResult::ListWorkFlowResult() :
+	ServiceResult()
+{}
+
+ListWorkFlowResult::ListWorkFlowResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListWorkFlowResult::~ListWorkFlowResult()
+{}
+
+void ListWorkFlowResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allWorkFlowInfoList = value["WorkFlowInfoList"]["WorkFlowInfo"];
+	for (auto value : allWorkFlowInfoList)
+	{
+		WorkFlowInfo workFlowInfoListObject;
+		if(!value["WorkFlowId"].isNull())
+			workFlowInfoListObject.workFlowId = value["WorkFlowId"].asString();
+		if(!value["Name"].isNull())
+			workFlowInfoListObject.name = value["Name"].asString();
+		if(!value["ActionList"].isNull())
+			workFlowInfoListObject.actionList = value["ActionList"].asString();
+		if(!value["CreationTime"].isNull())
+			workFlowInfoListObject.creationTime = value["CreationTime"].asString();
+		if(!value["ModifyTime"].isNull())
+			workFlowInfoListObject.modifyTime = value["ModifyTime"].asString();
+		workFlowInfoList_.push_back(workFlowInfoListObject);
+	}
+
+}
+
+std::vector<ListWorkFlowResult::WorkFlowInfo> ListWorkFlowResult::getWorkFlowInfoList()const
+{
+	return workFlowInfoList_;
+}
+

+ 71 - 0
vod/src/model/OpenVodServiceRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/SetDefaultVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::SetDefaultVodTemplateRequest;
+
+SetDefaultVodTemplateRequest::SetDefaultVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "SetDefaultVodTemplate")
+{}
+
+SetDefaultVodTemplateRequest::~SetDefaultVodTemplateRequest()
+{}
+
+long SetDefaultVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void SetDefaultVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string SetDefaultVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void SetDefaultVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string SetDefaultVodTemplateRequest::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+
+void SetDefaultVodTemplateRequest::setVodTemplateId(const std::string& vodTemplateId)
+{
+	vodTemplateId_ = vodTemplateId;
+	setParameter("VodTemplateId", vodTemplateId);
+}
+
+long SetDefaultVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void SetDefaultVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 52 - 0
vod/src/model/SetDefaultVodTemplateResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/SetDefaultVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+SetDefaultVodTemplateResult::SetDefaultVodTemplateResult() :
+	ServiceResult()
+{}
+
+SetDefaultVodTemplateResult::SetDefaultVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+SetDefaultVodTemplateResult::~SetDefaultVodTemplateResult()
+{}
+
+void SetDefaultVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["VodTemplateId"].isNull())
+		vodTemplateId_ = value["VodTemplateId"].asString();
+
+}
+
+std::string SetDefaultVodTemplateResult::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+

+ 48 - 37
vod/src/model/SetDefaultWatermarkRequest.cc

@@ -36,17 +36,6 @@ void SubmitSnapshotJobRequest::setResourceOwnerId(long resourceOwnerId)
 	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
 }
 
-long SubmitSnapshotJobRequest::getSpecifiedOffsetTime()const
-{
-	return specifiedOffsetTime_;
-}
-
-void SubmitSnapshotJobRequest::setSpecifiedOffsetTime(long specifiedOffsetTime)
-{
-	specifiedOffsetTime_ = specifiedOffsetTime;
-	setParameter("SpecifiedOffsetTime", std::to_string(specifiedOffsetTime));
-}
-
 std::string SubmitSnapshotJobRequest::getResourceOwnerAccount()const
 {
 	return resourceOwnerAccount_;
@@ -58,17 +47,6 @@ void SubmitSnapshotJobRequest::setResourceOwnerAccount(const std::string& resour
 	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
 }
 
-std::string SubmitSnapshotJobRequest::getWidth()const
-{
-	return width_;
-}
-
-void SubmitSnapshotJobRequest::setWidth(const std::string& width)
-{
-	width_ = width;
-	setParameter("Width", width);
-}
-
 long SubmitSnapshotJobRequest::getCount()const
 {
 	return count_;
@@ -91,26 +69,59 @@ void SubmitSnapshotJobRequest::setVideoId(const std::string& videoId)
 	setParameter("VideoId", videoId);
 }
 
-long SubmitSnapshotJobRequest::getInterval()const
+long SubmitSnapshotJobRequest::getOwnerId()const
 {
-	return interval_;
+	return ownerId_;
 }
 
-void SubmitSnapshotJobRequest::setInterval(long interval)
+void SubmitSnapshotJobRequest::setOwnerId(long ownerId)
 {
-	interval_ = interval;
-	setParameter("Interval", std::to_string(interval));
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
 }
 
-long SubmitSnapshotJobRequest::getOwnerId()const
+std::string SubmitSnapshotJobRequest::getAccessKeyId()const
 {
-	return ownerId_;
+	return accessKeyId_;
 }
 
-void SubmitSnapshotJobRequest::setOwnerId(long ownerId)
+void SubmitSnapshotJobRequest::setAccessKeyId(const std::string& accessKeyId)
 {
-	ownerId_ = ownerId;
-	setParameter("OwnerId", std::to_string(ownerId));
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+long SubmitSnapshotJobRequest::getSpecifiedOffsetTime()const
+{
+	return specifiedOffsetTime_;
+}
+
+void SubmitSnapshotJobRequest::setSpecifiedOffsetTime(long specifiedOffsetTime)
+{
+	specifiedOffsetTime_ = specifiedOffsetTime;
+	setParameter("SpecifiedOffsetTime", std::to_string(specifiedOffsetTime));
+}
+
+std::string SubmitSnapshotJobRequest::getWidth()const
+{
+	return width_;
+}
+
+void SubmitSnapshotJobRequest::setWidth(const std::string& width)
+{
+	width_ = width;
+	setParameter("Width", width);
+}
+
+long SubmitSnapshotJobRequest::getInterval()const
+{
+	return interval_;
+}
+
+void SubmitSnapshotJobRequest::setInterval(long interval)
+{
+	interval_ = interval;
+	setParameter("Interval", std::to_string(interval));
 }
 
 std::string SubmitSnapshotJobRequest::getSpriteSnapshotConfig()const
@@ -124,15 +135,15 @@ void SubmitSnapshotJobRequest::setSpriteSnapshotConfig(const std::string& sprite
 	setParameter("SpriteSnapshotConfig", spriteSnapshotConfig);
 }
 
-std::string SubmitSnapshotJobRequest::getAccessKeyId()const
+std::string SubmitSnapshotJobRequest::getSnapshotTemplateId()const
 {
-	return accessKeyId_;
+	return snapshotTemplateId_;
 }
 
-void SubmitSnapshotJobRequest::setAccessKeyId(const std::string& accessKeyId)
+void SubmitSnapshotJobRequest::setSnapshotTemplateId(const std::string& snapshotTemplateId)
 {
-	accessKeyId_ = accessKeyId;
-	setParameter("AccessKeyId", accessKeyId);
+	snapshotTemplateId_ = snapshotTemplateId;
+	setParameter("SnapshotTemplateId", snapshotTemplateId);
 }
 
 std::string SubmitSnapshotJobRequest::getHeight()const

+ 93 - 0
vod/src/model/SubmitSnapshotJobResult.cc

@@ -0,0 +1,93 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/UpdateVodTemplateRequest.h>
+
+using AlibabaCloud::Vod::Model::UpdateVodTemplateRequest;
+
+UpdateVodTemplateRequest::UpdateVodTemplateRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "UpdateVodTemplate")
+{}
+
+UpdateVodTemplateRequest::~UpdateVodTemplateRequest()
+{}
+
+long UpdateVodTemplateRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void UpdateVodTemplateRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string UpdateVodTemplateRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void UpdateVodTemplateRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string UpdateVodTemplateRequest::getTemplateConfig()const
+{
+	return templateConfig_;
+}
+
+void UpdateVodTemplateRequest::setTemplateConfig(const std::string& templateConfig)
+{
+	templateConfig_ = templateConfig;
+	setParameter("TemplateConfig", templateConfig);
+}
+
+std::string UpdateVodTemplateRequest::getName()const
+{
+	return name_;
+}
+
+void UpdateVodTemplateRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+std::string UpdateVodTemplateRequest::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+
+void UpdateVodTemplateRequest::setVodTemplateId(const std::string& vodTemplateId)
+{
+	vodTemplateId_ = vodTemplateId;
+	setParameter("VodTemplateId", vodTemplateId);
+}
+
+long UpdateVodTemplateRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void UpdateVodTemplateRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+

+ 52 - 0
vod/src/model/UpdateVodTemplateResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/UpdateVodTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+UpdateVodTemplateResult::UpdateVodTemplateResult() :
+	ServiceResult()
+{}
+
+UpdateVodTemplateResult::UpdateVodTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateVodTemplateResult::~UpdateVodTemplateResult()
+{}
+
+void UpdateVodTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["VodTemplateId"].isNull())
+		vodTemplateId_ = value["VodTemplateId"].asString();
+
+}
+
+std::string UpdateVodTemplateResult::getVodTemplateId()const
+{
+	return vodTemplateId_;
+}
+

+ 93 - 0
vod/src/model/UpdateWatermarkRequest.cc

@@ -0,0 +1,93 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/UpdateWorkFlowRequest.h>
+
+using AlibabaCloud::Vod::Model::UpdateWorkFlowRequest;
+
+UpdateWorkFlowRequest::UpdateWorkFlowRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "UpdateWorkFlow")
+{}
+
+UpdateWorkFlowRequest::~UpdateWorkFlowRequest()
+{}
+
+long UpdateWorkFlowRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void UpdateWorkFlowRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string UpdateWorkFlowRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void UpdateWorkFlowRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string UpdateWorkFlowRequest::getName()const
+{
+	return name_;
+}
+
+void UpdateWorkFlowRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+std::string UpdateWorkFlowRequest::getActionList()const
+{
+	return actionList_;
+}
+
+void UpdateWorkFlowRequest::setActionList(const std::string& actionList)
+{
+	actionList_ = actionList;
+	setParameter("ActionList", actionList);
+}
+
+long UpdateWorkFlowRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void UpdateWorkFlowRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string UpdateWorkFlowRequest::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+
+void UpdateWorkFlowRequest::setWorkFlowId(const std::string& workFlowId)
+{
+	workFlowId_ = workFlowId;
+	setParameter("WorkFlowId", workFlowId);
+}
+

+ 52 - 0
vod/src/model/UpdateWorkFlowResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/vod/model/UpdateWorkFlowResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+UpdateWorkFlowResult::UpdateWorkFlowResult() :
+	ServiceResult()
+{}
+
+UpdateWorkFlowResult::UpdateWorkFlowResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateWorkFlowResult::~UpdateWorkFlowResult()
+{}
+
+void UpdateWorkFlowResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["WorkFlowId"].isNull())
+		workFlowId_ = value["WorkFlowId"].asString();
+
+}
+
+std::string UpdateWorkFlowResult::getWorkFlowId()const
+{
+	return workFlowId_;
+}
+

+ 0 - 0
vod/src/model/UploadMediaByURLRequest.cc