Browse Source

Add support for secret.

sdk-team 3 years ago
parent
commit
c885bb9c23
86 changed files with 6827 additions and 97 deletions
  1. 1 1
      VERSION
  2. 62 2
      sae/CMakeLists.txt
  3. 120 0
      sae/include/alibabacloud/sae/SaeClient.h
  4. 24 12
      sae/include/alibabacloud/sae/model/CreateApplicationRequest.h
  5. 3 0
      sae/include/alibabacloud/sae/model/CreateIngressRequest.h
  6. 228 0
      sae/include/alibabacloud/sae/model/CreateJobRequest.h
  7. 66 0
      sae/include/alibabacloud/sae/model/CreateJobResult.h
  8. 51 0
      sae/include/alibabacloud/sae/model/CreateSecretRequest.h
  9. 65 0
      sae/include/alibabacloud/sae/model/CreateSecretResult.h
  10. 45 0
      sae/include/alibabacloud/sae/model/DeleteHistoryJobRequest.h
  11. 61 0
      sae/include/alibabacloud/sae/model/DeleteHistoryJobResult.h
  12. 42 0
      sae/include/alibabacloud/sae/model/DeleteJobRequest.h
  13. 61 0
      sae/include/alibabacloud/sae/model/DeleteJobResult.h
  14. 45 0
      sae/include/alibabacloud/sae/model/DeleteSecretRequest.h
  15. 65 0
      sae/include/alibabacloud/sae/model/DeleteSecretResult.h
  16. 27 12
      sae/include/alibabacloud/sae/model/DeployApplicationRequest.h
  17. 8 0
      sae/include/alibabacloud/sae/model/DescribeApplicationConfigResult.h
  18. 4 3
      sae/include/alibabacloud/sae/model/DescribeApplicationInstancesResult.h
  19. 2 0
      sae/include/alibabacloud/sae/model/DescribeApplicationSlbsResult.h
  20. 3 0
      sae/include/alibabacloud/sae/model/DescribeConfigurationPriceRequest.h
  21. 6 3
      sae/include/alibabacloud/sae/model/DescribeIngressResult.h
  22. 51 0
      sae/include/alibabacloud/sae/model/DescribeJobHistoryRequest.h
  23. 79 0
      sae/include/alibabacloud/sae/model/DescribeJobHistoryResult.h
  24. 48 0
      sae/include/alibabacloud/sae/model/DescribeJobRequest.h
  25. 161 0
      sae/include/alibabacloud/sae/model/DescribeJobResult.h
  26. 45 0
      sae/include/alibabacloud/sae/model/DescribeJobStatusRequest.h
  27. 72 0
      sae/include/alibabacloud/sae/model/DescribeJobStatusResult.h
  28. 1 0
      sae/include/alibabacloud/sae/model/DescribeNamespaceResourcesResult.h
  29. 45 0
      sae/include/alibabacloud/sae/model/DescribeSecretRequest.h
  30. 77 0
      sae/include/alibabacloud/sae/model/DescribeSecretResult.h
  31. 66 0
      sae/include/alibabacloud/sae/model/ExecJobRequest.h
  32. 68 0
      sae/include/alibabacloud/sae/model/ExecJobResult.h
  33. 1 0
      sae/include/alibabacloud/sae/model/ListIngressesResult.h
  34. 69 0
      sae/include/alibabacloud/sae/model/ListJobsRequest.h
  35. 100 0
      sae/include/alibabacloud/sae/model/ListJobsResult.h
  36. 42 0
      sae/include/alibabacloud/sae/model/ListSecretsRequest.h
  37. 81 0
      sae/include/alibabacloud/sae/model/ListSecretsResult.h
  38. 45 0
      sae/include/alibabacloud/sae/model/SuspendJobRequest.h
  39. 61 0
      sae/include/alibabacloud/sae/model/SuspendJobResult.h
  40. 3 0
      sae/include/alibabacloud/sae/model/UpdateIngressRequest.h
  41. 216 0
      sae/include/alibabacloud/sae/model/UpdateJobRequest.h
  42. 66 0
      sae/include/alibabacloud/sae/model/UpdateJobResult.h
  43. 48 0
      sae/include/alibabacloud/sae/model/UpdateSecretRequest.h
  44. 65 0
      sae/include/alibabacloud/sae/model/UpdateSecretResult.h
  45. 540 0
      sae/src/SaeClient.cc
  46. 68 32
      sae/src/model/CreateApplicationRequest.cc
  47. 9 0
      sae/src/model/CreateIngressRequest.cc
  48. 595 0
      sae/src/model/CreateJobRequest.cc
  49. 89 0
      sae/src/model/CreateJobResult.cc
  50. 64 0
      sae/src/model/CreateSecretRequest.cc
  51. 87 0
      sae/src/model/CreateSecretResult.cc
  52. 46 0
      sae/src/model/DeleteHistoryJobRequest.cc
  53. 86 0
      sae/src/model/DeleteHistoryJobResult.cc
  54. 37 0
      sae/src/model/DeleteJobRequest.cc
  55. 86 0
      sae/src/model/DeleteJobResult.cc
  56. 46 0
      sae/src/model/DeleteSecretRequest.cc
  57. 87 0
      sae/src/model/DeleteSecretResult.cc
  58. 77 32
      sae/src/model/DeployApplicationRequest.cc
  59. 16 0
      sae/src/model/DescribeApplicationConfigResult.cc
  60. 2 0
      sae/src/model/DescribeApplicationInstancesResult.cc
  61. 4 0
      sae/src/model/DescribeApplicationSlbsResult.cc
  62. 9 0
      sae/src/model/DescribeConfigurationPriceRequest.cc
  63. 6 0
      sae/src/model/DescribeIngressResult.cc
  64. 64 0
      sae/src/model/DescribeJobHistoryRequest.cc
  65. 113 0
      sae/src/model/DescribeJobHistoryResult.cc
  66. 55 0
      sae/src/model/DescribeJobRequest.cc
  67. 274 0
      sae/src/model/DescribeJobResult.cc
  68. 46 0
      sae/src/model/DescribeJobStatusRequest.cc
  69. 101 0
      sae/src/model/DescribeJobStatusResult.cc
  70. 2 0
      sae/src/model/DescribeNamespaceResourcesResult.cc
  71. 46 0
      sae/src/model/DescribeSecretRequest.cc
  72. 109 0
      sae/src/model/DescribeSecretResult.cc
  73. 109 0
      sae/src/model/ExecJobRequest.cc
  74. 93 0
      sae/src/model/ExecJobResult.cc
  75. 2 0
      sae/src/model/ListIngressesResult.cc
  76. 118 0
      sae/src/model/ListJobsRequest.cc
  77. 159 0
      sae/src/model/ListJobsResult.cc
  78. 37 0
      sae/src/model/ListSecretsRequest.cc
  79. 115 0
      sae/src/model/ListSecretsResult.cc
  80. 46 0
      sae/src/model/SuspendJobRequest.cc
  81. 86 0
      sae/src/model/SuspendJobResult.cc
  82. 9 0
      sae/src/model/UpdateIngressRequest.cc
  83. 559 0
      sae/src/model/UpdateJobRequest.cc
  84. 89 0
      sae/src/model/UpdateJobResult.cc
  85. 55 0
      sae/src/model/UpdateSecretRequest.cc
  86. 87 0
      sae/src/model/UpdateSecretResult.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1372
+1.36.1373

+ 62 - 2
sae/CMakeLists.txt

@@ -43,8 +43,12 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/CreateGreyTagRouteResult.h
 	include/alibabacloud/sae/model/CreateIngressRequest.h
 	include/alibabacloud/sae/model/CreateIngressResult.h
+	include/alibabacloud/sae/model/CreateJobRequest.h
+	include/alibabacloud/sae/model/CreateJobResult.h
 	include/alibabacloud/sae/model/CreateNamespaceRequest.h
 	include/alibabacloud/sae/model/CreateNamespaceResult.h
+	include/alibabacloud/sae/model/CreateSecretRequest.h
+	include/alibabacloud/sae/model/CreateSecretResult.h
 	include/alibabacloud/sae/model/DeleteApplicationRequest.h
 	include/alibabacloud/sae/model/DeleteApplicationResult.h
 	include/alibabacloud/sae/model/DeleteApplicationScalingRuleRequest.h
@@ -53,10 +57,16 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/DeleteConfigMapResult.h
 	include/alibabacloud/sae/model/DeleteGreyTagRouteRequest.h
 	include/alibabacloud/sae/model/DeleteGreyTagRouteResult.h
+	include/alibabacloud/sae/model/DeleteHistoryJobRequest.h
+	include/alibabacloud/sae/model/DeleteHistoryJobResult.h
 	include/alibabacloud/sae/model/DeleteIngressRequest.h
 	include/alibabacloud/sae/model/DeleteIngressResult.h
+	include/alibabacloud/sae/model/DeleteJobRequest.h
+	include/alibabacloud/sae/model/DeleteJobResult.h
 	include/alibabacloud/sae/model/DeleteNamespaceRequest.h
 	include/alibabacloud/sae/model/DeleteNamespaceResult.h
+	include/alibabacloud/sae/model/DeleteSecretRequest.h
+	include/alibabacloud/sae/model/DeleteSecretResult.h
 	include/alibabacloud/sae/model/DeployApplicationRequest.h
 	include/alibabacloud/sae/model/DeployApplicationResult.h
 	include/alibabacloud/sae/model/DescribeAppServiceDetailRequest.h
@@ -95,6 +105,12 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/DescribeInstanceLogResult.h
 	include/alibabacloud/sae/model/DescribeInstanceSpecificationsRequest.h
 	include/alibabacloud/sae/model/DescribeInstanceSpecificationsResult.h
+	include/alibabacloud/sae/model/DescribeJobRequest.h
+	include/alibabacloud/sae/model/DescribeJobResult.h
+	include/alibabacloud/sae/model/DescribeJobHistoryRequest.h
+	include/alibabacloud/sae/model/DescribeJobHistoryResult.h
+	include/alibabacloud/sae/model/DescribeJobStatusRequest.h
+	include/alibabacloud/sae/model/DescribeJobStatusResult.h
 	include/alibabacloud/sae/model/DescribeNamespaceRequest.h
 	include/alibabacloud/sae/model/DescribeNamespaceResult.h
 	include/alibabacloud/sae/model/DescribeNamespaceListRequest.h
@@ -107,10 +123,14 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/DescribePipelineResult.h
 	include/alibabacloud/sae/model/DescribeRegionsRequest.h
 	include/alibabacloud/sae/model/DescribeRegionsResult.h
+	include/alibabacloud/sae/model/DescribeSecretRequest.h
+	include/alibabacloud/sae/model/DescribeSecretResult.h
 	include/alibabacloud/sae/model/DisableApplicationScalingRuleRequest.h
 	include/alibabacloud/sae/model/DisableApplicationScalingRuleResult.h
 	include/alibabacloud/sae/model/EnableApplicationScalingRuleRequest.h
 	include/alibabacloud/sae/model/EnableApplicationScalingRuleResult.h
+	include/alibabacloud/sae/model/ExecJobRequest.h
+	include/alibabacloud/sae/model/ExecJobResult.h
 	include/alibabacloud/sae/model/ListAppEventsRequest.h
 	include/alibabacloud/sae/model/ListAppEventsResult.h
 	include/alibabacloud/sae/model/ListAppServicesPageRequest.h
@@ -127,6 +147,8 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/ListGreyTagRouteResult.h
 	include/alibabacloud/sae/model/ListIngressesRequest.h
 	include/alibabacloud/sae/model/ListIngressesResult.h
+	include/alibabacloud/sae/model/ListJobsRequest.h
+	include/alibabacloud/sae/model/ListJobsResult.h
 	include/alibabacloud/sae/model/ListLogConfigsRequest.h
 	include/alibabacloud/sae/model/ListLogConfigsResult.h
 	include/alibabacloud/sae/model/ListNamespaceChangeOrdersRequest.h
@@ -135,6 +157,8 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/ListNamespacedConfigMapsResult.h
 	include/alibabacloud/sae/model/ListPublishedServicesRequest.h
 	include/alibabacloud/sae/model/ListPublishedServicesResult.h
+	include/alibabacloud/sae/model/ListSecretsRequest.h
+	include/alibabacloud/sae/model/ListSecretsResult.h
 	include/alibabacloud/sae/model/ListTagResourcesRequest.h
 	include/alibabacloud/sae/model/ListTagResourcesResult.h
 	include/alibabacloud/sae/model/OpenSaeServiceRequest.h
@@ -157,6 +181,8 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/StartApplicationResult.h
 	include/alibabacloud/sae/model/StopApplicationRequest.h
 	include/alibabacloud/sae/model/StopApplicationResult.h
+	include/alibabacloud/sae/model/SuspendJobRequest.h
+	include/alibabacloud/sae/model/SuspendJobResult.h
 	include/alibabacloud/sae/model/TagResourcesRequest.h
 	include/alibabacloud/sae/model/TagResourcesResult.h
 	include/alibabacloud/sae/model/UnbindSlbRequest.h
@@ -177,10 +203,14 @@ set(sae_public_header_model
 	include/alibabacloud/sae/model/UpdateGreyTagRouteResult.h
 	include/alibabacloud/sae/model/UpdateIngressRequest.h
 	include/alibabacloud/sae/model/UpdateIngressResult.h
+	include/alibabacloud/sae/model/UpdateJobRequest.h
+	include/alibabacloud/sae/model/UpdateJobResult.h
 	include/alibabacloud/sae/model/UpdateNamespaceRequest.h
 	include/alibabacloud/sae/model/UpdateNamespaceResult.h
 	include/alibabacloud/sae/model/UpdateNamespaceVpcRequest.h
-	include/alibabacloud/sae/model/UpdateNamespaceVpcResult.h )
+	include/alibabacloud/sae/model/UpdateNamespaceVpcResult.h
+	include/alibabacloud/sae/model/UpdateSecretRequest.h
+	include/alibabacloud/sae/model/UpdateSecretResult.h )
 
 set(sae_src 
 	src/SaeClient.cc
@@ -206,8 +236,12 @@ set(sae_src
 	src/model/CreateGreyTagRouteResult.cc
 	src/model/CreateIngressRequest.cc
 	src/model/CreateIngressResult.cc
+	src/model/CreateJobRequest.cc
+	src/model/CreateJobResult.cc
 	src/model/CreateNamespaceRequest.cc
 	src/model/CreateNamespaceResult.cc
+	src/model/CreateSecretRequest.cc
+	src/model/CreateSecretResult.cc
 	src/model/DeleteApplicationRequest.cc
 	src/model/DeleteApplicationResult.cc
 	src/model/DeleteApplicationScalingRuleRequest.cc
@@ -216,10 +250,16 @@ set(sae_src
 	src/model/DeleteConfigMapResult.cc
 	src/model/DeleteGreyTagRouteRequest.cc
 	src/model/DeleteGreyTagRouteResult.cc
+	src/model/DeleteHistoryJobRequest.cc
+	src/model/DeleteHistoryJobResult.cc
 	src/model/DeleteIngressRequest.cc
 	src/model/DeleteIngressResult.cc
+	src/model/DeleteJobRequest.cc
+	src/model/DeleteJobResult.cc
 	src/model/DeleteNamespaceRequest.cc
 	src/model/DeleteNamespaceResult.cc
+	src/model/DeleteSecretRequest.cc
+	src/model/DeleteSecretResult.cc
 	src/model/DeployApplicationRequest.cc
 	src/model/DeployApplicationResult.cc
 	src/model/DescribeAppServiceDetailRequest.cc
@@ -258,6 +298,12 @@ set(sae_src
 	src/model/DescribeInstanceLogResult.cc
 	src/model/DescribeInstanceSpecificationsRequest.cc
 	src/model/DescribeInstanceSpecificationsResult.cc
+	src/model/DescribeJobRequest.cc
+	src/model/DescribeJobResult.cc
+	src/model/DescribeJobHistoryRequest.cc
+	src/model/DescribeJobHistoryResult.cc
+	src/model/DescribeJobStatusRequest.cc
+	src/model/DescribeJobStatusResult.cc
 	src/model/DescribeNamespaceRequest.cc
 	src/model/DescribeNamespaceResult.cc
 	src/model/DescribeNamespaceListRequest.cc
@@ -270,10 +316,14 @@ set(sae_src
 	src/model/DescribePipelineResult.cc
 	src/model/DescribeRegionsRequest.cc
 	src/model/DescribeRegionsResult.cc
+	src/model/DescribeSecretRequest.cc
+	src/model/DescribeSecretResult.cc
 	src/model/DisableApplicationScalingRuleRequest.cc
 	src/model/DisableApplicationScalingRuleResult.cc
 	src/model/EnableApplicationScalingRuleRequest.cc
 	src/model/EnableApplicationScalingRuleResult.cc
+	src/model/ExecJobRequest.cc
+	src/model/ExecJobResult.cc
 	src/model/ListAppEventsRequest.cc
 	src/model/ListAppEventsResult.cc
 	src/model/ListAppServicesPageRequest.cc
@@ -290,6 +340,8 @@ set(sae_src
 	src/model/ListGreyTagRouteResult.cc
 	src/model/ListIngressesRequest.cc
 	src/model/ListIngressesResult.cc
+	src/model/ListJobsRequest.cc
+	src/model/ListJobsResult.cc
 	src/model/ListLogConfigsRequest.cc
 	src/model/ListLogConfigsResult.cc
 	src/model/ListNamespaceChangeOrdersRequest.cc
@@ -298,6 +350,8 @@ set(sae_src
 	src/model/ListNamespacedConfigMapsResult.cc
 	src/model/ListPublishedServicesRequest.cc
 	src/model/ListPublishedServicesResult.cc
+	src/model/ListSecretsRequest.cc
+	src/model/ListSecretsResult.cc
 	src/model/ListTagResourcesRequest.cc
 	src/model/ListTagResourcesResult.cc
 	src/model/OpenSaeServiceRequest.cc
@@ -320,6 +374,8 @@ set(sae_src
 	src/model/StartApplicationResult.cc
 	src/model/StopApplicationRequest.cc
 	src/model/StopApplicationResult.cc
+	src/model/SuspendJobRequest.cc
+	src/model/SuspendJobResult.cc
 	src/model/TagResourcesRequest.cc
 	src/model/TagResourcesResult.cc
 	src/model/UnbindSlbRequest.cc
@@ -340,10 +396,14 @@ set(sae_src
 	src/model/UpdateGreyTagRouteResult.cc
 	src/model/UpdateIngressRequest.cc
 	src/model/UpdateIngressResult.cc
+	src/model/UpdateJobRequest.cc
+	src/model/UpdateJobResult.cc
 	src/model/UpdateNamespaceRequest.cc
 	src/model/UpdateNamespaceResult.cc
 	src/model/UpdateNamespaceVpcRequest.cc
-	src/model/UpdateNamespaceVpcResult.cc )
+	src/model/UpdateNamespaceVpcResult.cc
+	src/model/UpdateSecretRequest.cc
+	src/model/UpdateSecretResult.cc )
 
 add_library(sae ${LIB_TYPE}
 	${sae_public_header}

+ 120 - 0
sae/include/alibabacloud/sae/SaeClient.h

@@ -44,8 +44,12 @@
 #include "model/CreateGreyTagRouteResult.h"
 #include "model/CreateIngressRequest.h"
 #include "model/CreateIngressResult.h"
+#include "model/CreateJobRequest.h"
+#include "model/CreateJobResult.h"
 #include "model/CreateNamespaceRequest.h"
 #include "model/CreateNamespaceResult.h"
+#include "model/CreateSecretRequest.h"
+#include "model/CreateSecretResult.h"
 #include "model/DeleteApplicationRequest.h"
 #include "model/DeleteApplicationResult.h"
 #include "model/DeleteApplicationScalingRuleRequest.h"
@@ -54,10 +58,16 @@
 #include "model/DeleteConfigMapResult.h"
 #include "model/DeleteGreyTagRouteRequest.h"
 #include "model/DeleteGreyTagRouteResult.h"
+#include "model/DeleteHistoryJobRequest.h"
+#include "model/DeleteHistoryJobResult.h"
 #include "model/DeleteIngressRequest.h"
 #include "model/DeleteIngressResult.h"
+#include "model/DeleteJobRequest.h"
+#include "model/DeleteJobResult.h"
 #include "model/DeleteNamespaceRequest.h"
 #include "model/DeleteNamespaceResult.h"
+#include "model/DeleteSecretRequest.h"
+#include "model/DeleteSecretResult.h"
 #include "model/DeployApplicationRequest.h"
 #include "model/DeployApplicationResult.h"
 #include "model/DescribeAppServiceDetailRequest.h"
@@ -96,6 +106,12 @@
 #include "model/DescribeInstanceLogResult.h"
 #include "model/DescribeInstanceSpecificationsRequest.h"
 #include "model/DescribeInstanceSpecificationsResult.h"
+#include "model/DescribeJobRequest.h"
+#include "model/DescribeJobResult.h"
+#include "model/DescribeJobHistoryRequest.h"
+#include "model/DescribeJobHistoryResult.h"
+#include "model/DescribeJobStatusRequest.h"
+#include "model/DescribeJobStatusResult.h"
 #include "model/DescribeNamespaceRequest.h"
 #include "model/DescribeNamespaceResult.h"
 #include "model/DescribeNamespaceListRequest.h"
@@ -108,10 +124,14 @@
 #include "model/DescribePipelineResult.h"
 #include "model/DescribeRegionsRequest.h"
 #include "model/DescribeRegionsResult.h"
+#include "model/DescribeSecretRequest.h"
+#include "model/DescribeSecretResult.h"
 #include "model/DisableApplicationScalingRuleRequest.h"
 #include "model/DisableApplicationScalingRuleResult.h"
 #include "model/EnableApplicationScalingRuleRequest.h"
 #include "model/EnableApplicationScalingRuleResult.h"
+#include "model/ExecJobRequest.h"
+#include "model/ExecJobResult.h"
 #include "model/ListAppEventsRequest.h"
 #include "model/ListAppEventsResult.h"
 #include "model/ListAppServicesPageRequest.h"
@@ -128,6 +148,8 @@
 #include "model/ListGreyTagRouteResult.h"
 #include "model/ListIngressesRequest.h"
 #include "model/ListIngressesResult.h"
+#include "model/ListJobsRequest.h"
+#include "model/ListJobsResult.h"
 #include "model/ListLogConfigsRequest.h"
 #include "model/ListLogConfigsResult.h"
 #include "model/ListNamespaceChangeOrdersRequest.h"
@@ -136,6 +158,8 @@
 #include "model/ListNamespacedConfigMapsResult.h"
 #include "model/ListPublishedServicesRequest.h"
 #include "model/ListPublishedServicesResult.h"
+#include "model/ListSecretsRequest.h"
+#include "model/ListSecretsResult.h"
 #include "model/ListTagResourcesRequest.h"
 #include "model/ListTagResourcesResult.h"
 #include "model/OpenSaeServiceRequest.h"
@@ -158,6 +182,8 @@
 #include "model/StartApplicationResult.h"
 #include "model/StopApplicationRequest.h"
 #include "model/StopApplicationResult.h"
+#include "model/SuspendJobRequest.h"
+#include "model/SuspendJobResult.h"
 #include "model/TagResourcesRequest.h"
 #include "model/TagResourcesResult.h"
 #include "model/UnbindSlbRequest.h"
@@ -178,10 +204,14 @@
 #include "model/UpdateGreyTagRouteResult.h"
 #include "model/UpdateIngressRequest.h"
 #include "model/UpdateIngressResult.h"
+#include "model/UpdateJobRequest.h"
+#include "model/UpdateJobResult.h"
 #include "model/UpdateNamespaceRequest.h"
 #include "model/UpdateNamespaceResult.h"
 #include "model/UpdateNamespaceVpcRequest.h"
 #include "model/UpdateNamespaceVpcResult.h"
+#include "model/UpdateSecretRequest.h"
+#include "model/UpdateSecretResult.h"
 
 
 namespace AlibabaCloud
@@ -224,9 +254,15 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateIngressResult> CreateIngressOutcome;
 			typedef std::future<CreateIngressOutcome> CreateIngressOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::CreateIngressRequest&, const CreateIngressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateIngressAsyncHandler;
+			typedef Outcome<Error, Model::CreateJobResult> CreateJobOutcome;
+			typedef std::future<CreateJobOutcome> CreateJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::CreateJobRequest&, const CreateJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateJobAsyncHandler;
 			typedef Outcome<Error, Model::CreateNamespaceResult> CreateNamespaceOutcome;
 			typedef std::future<CreateNamespaceOutcome> CreateNamespaceOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::CreateNamespaceRequest&, const CreateNamespaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateNamespaceAsyncHandler;
+			typedef Outcome<Error, Model::CreateSecretResult> CreateSecretOutcome;
+			typedef std::future<CreateSecretOutcome> CreateSecretOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::CreateSecretRequest&, const CreateSecretOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateSecretAsyncHandler;
 			typedef Outcome<Error, Model::DeleteApplicationResult> DeleteApplicationOutcome;
 			typedef std::future<DeleteApplicationOutcome> DeleteApplicationOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DeleteApplicationRequest&, const DeleteApplicationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteApplicationAsyncHandler;
@@ -239,12 +275,21 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteGreyTagRouteResult> DeleteGreyTagRouteOutcome;
 			typedef std::future<DeleteGreyTagRouteOutcome> DeleteGreyTagRouteOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DeleteGreyTagRouteRequest&, const DeleteGreyTagRouteOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteGreyTagRouteAsyncHandler;
+			typedef Outcome<Error, Model::DeleteHistoryJobResult> DeleteHistoryJobOutcome;
+			typedef std::future<DeleteHistoryJobOutcome> DeleteHistoryJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DeleteHistoryJobRequest&, const DeleteHistoryJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteHistoryJobAsyncHandler;
 			typedef Outcome<Error, Model::DeleteIngressResult> DeleteIngressOutcome;
 			typedef std::future<DeleteIngressOutcome> DeleteIngressOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DeleteIngressRequest&, const DeleteIngressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteIngressAsyncHandler;
+			typedef Outcome<Error, Model::DeleteJobResult> DeleteJobOutcome;
+			typedef std::future<DeleteJobOutcome> DeleteJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DeleteJobRequest&, const DeleteJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteJobAsyncHandler;
 			typedef Outcome<Error, Model::DeleteNamespaceResult> DeleteNamespaceOutcome;
 			typedef std::future<DeleteNamespaceOutcome> DeleteNamespaceOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DeleteNamespaceRequest&, const DeleteNamespaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteNamespaceAsyncHandler;
+			typedef Outcome<Error, Model::DeleteSecretResult> DeleteSecretOutcome;
+			typedef std::future<DeleteSecretOutcome> DeleteSecretOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DeleteSecretRequest&, const DeleteSecretOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteSecretAsyncHandler;
 			typedef Outcome<Error, Model::DeployApplicationResult> DeployApplicationOutcome;
 			typedef std::future<DeployApplicationOutcome> DeployApplicationOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DeployApplicationRequest&, const DeployApplicationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeployApplicationAsyncHandler;
@@ -302,6 +347,15 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeInstanceSpecificationsResult> DescribeInstanceSpecificationsOutcome;
 			typedef std::future<DescribeInstanceSpecificationsOutcome> DescribeInstanceSpecificationsOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DescribeInstanceSpecificationsRequest&, const DescribeInstanceSpecificationsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceSpecificationsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeJobResult> DescribeJobOutcome;
+			typedef std::future<DescribeJobOutcome> DescribeJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DescribeJobRequest&, const DescribeJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeJobAsyncHandler;
+			typedef Outcome<Error, Model::DescribeJobHistoryResult> DescribeJobHistoryOutcome;
+			typedef std::future<DescribeJobHistoryOutcome> DescribeJobHistoryOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DescribeJobHistoryRequest&, const DescribeJobHistoryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeJobHistoryAsyncHandler;
+			typedef Outcome<Error, Model::DescribeJobStatusResult> DescribeJobStatusOutcome;
+			typedef std::future<DescribeJobStatusOutcome> DescribeJobStatusOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DescribeJobStatusRequest&, const DescribeJobStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeJobStatusAsyncHandler;
 			typedef Outcome<Error, Model::DescribeNamespaceResult> DescribeNamespaceOutcome;
 			typedef std::future<DescribeNamespaceOutcome> DescribeNamespaceOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DescribeNamespaceRequest&, const DescribeNamespaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeNamespaceAsyncHandler;
@@ -320,12 +374,18 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeRegionsResult> DescribeRegionsOutcome;
 			typedef std::future<DescribeRegionsOutcome> DescribeRegionsOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DescribeRegionsRequest&, const DescribeRegionsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRegionsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSecretResult> DescribeSecretOutcome;
+			typedef std::future<DescribeSecretOutcome> DescribeSecretOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::DescribeSecretRequest&, const DescribeSecretOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSecretAsyncHandler;
 			typedef Outcome<Error, Model::DisableApplicationScalingRuleResult> DisableApplicationScalingRuleOutcome;
 			typedef std::future<DisableApplicationScalingRuleOutcome> DisableApplicationScalingRuleOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::DisableApplicationScalingRuleRequest&, const DisableApplicationScalingRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DisableApplicationScalingRuleAsyncHandler;
 			typedef Outcome<Error, Model::EnableApplicationScalingRuleResult> EnableApplicationScalingRuleOutcome;
 			typedef std::future<EnableApplicationScalingRuleOutcome> EnableApplicationScalingRuleOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::EnableApplicationScalingRuleRequest&, const EnableApplicationScalingRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> EnableApplicationScalingRuleAsyncHandler;
+			typedef Outcome<Error, Model::ExecJobResult> ExecJobOutcome;
+			typedef std::future<ExecJobOutcome> ExecJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::ExecJobRequest&, const ExecJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ExecJobAsyncHandler;
 			typedef Outcome<Error, Model::ListAppEventsResult> ListAppEventsOutcome;
 			typedef std::future<ListAppEventsOutcome> ListAppEventsOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::ListAppEventsRequest&, const ListAppEventsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAppEventsAsyncHandler;
@@ -350,6 +410,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListIngressesResult> ListIngressesOutcome;
 			typedef std::future<ListIngressesOutcome> ListIngressesOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::ListIngressesRequest&, const ListIngressesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListIngressesAsyncHandler;
+			typedef Outcome<Error, Model::ListJobsResult> ListJobsOutcome;
+			typedef std::future<ListJobsOutcome> ListJobsOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::ListJobsRequest&, const ListJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListJobsAsyncHandler;
 			typedef Outcome<Error, Model::ListLogConfigsResult> ListLogConfigsOutcome;
 			typedef std::future<ListLogConfigsOutcome> ListLogConfigsOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::ListLogConfigsRequest&, const ListLogConfigsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLogConfigsAsyncHandler;
@@ -362,6 +425,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListPublishedServicesResult> ListPublishedServicesOutcome;
 			typedef std::future<ListPublishedServicesOutcome> ListPublishedServicesOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::ListPublishedServicesRequest&, const ListPublishedServicesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPublishedServicesAsyncHandler;
+			typedef Outcome<Error, Model::ListSecretsResult> ListSecretsOutcome;
+			typedef std::future<ListSecretsOutcome> ListSecretsOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::ListSecretsRequest&, const ListSecretsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSecretsAsyncHandler;
 			typedef Outcome<Error, Model::ListTagResourcesResult> ListTagResourcesOutcome;
 			typedef std::future<ListTagResourcesOutcome> ListTagResourcesOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::ListTagResourcesRequest&, const ListTagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagResourcesAsyncHandler;
@@ -395,6 +461,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::StopApplicationResult> StopApplicationOutcome;
 			typedef std::future<StopApplicationOutcome> StopApplicationOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::StopApplicationRequest&, const StopApplicationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopApplicationAsyncHandler;
+			typedef Outcome<Error, Model::SuspendJobResult> SuspendJobOutcome;
+			typedef std::future<SuspendJobOutcome> SuspendJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::SuspendJobRequest&, const SuspendJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SuspendJobAsyncHandler;
 			typedef Outcome<Error, Model::TagResourcesResult> TagResourcesOutcome;
 			typedef std::future<TagResourcesOutcome> TagResourcesOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::TagResourcesRequest&, const TagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> TagResourcesAsyncHandler;
@@ -425,12 +494,18 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateIngressResult> UpdateIngressOutcome;
 			typedef std::future<UpdateIngressOutcome> UpdateIngressOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::UpdateIngressRequest&, const UpdateIngressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateIngressAsyncHandler;
+			typedef Outcome<Error, Model::UpdateJobResult> UpdateJobOutcome;
+			typedef std::future<UpdateJobOutcome> UpdateJobOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::UpdateJobRequest&, const UpdateJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateJobAsyncHandler;
 			typedef Outcome<Error, Model::UpdateNamespaceResult> UpdateNamespaceOutcome;
 			typedef std::future<UpdateNamespaceOutcome> UpdateNamespaceOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::UpdateNamespaceRequest&, const UpdateNamespaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateNamespaceAsyncHandler;
 			typedef Outcome<Error, Model::UpdateNamespaceVpcResult> UpdateNamespaceVpcOutcome;
 			typedef std::future<UpdateNamespaceVpcOutcome> UpdateNamespaceVpcOutcomeCallable;
 			typedef std::function<void(const SaeClient*, const Model::UpdateNamespaceVpcRequest&, const UpdateNamespaceVpcOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateNamespaceVpcAsyncHandler;
+			typedef Outcome<Error, Model::UpdateSecretResult> UpdateSecretOutcome;
+			typedef std::future<UpdateSecretOutcome> UpdateSecretOutcomeCallable;
+			typedef std::function<void(const SaeClient*, const Model::UpdateSecretRequest&, const UpdateSecretOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateSecretAsyncHandler;
 
 			SaeClient(const Credentials &credentials, const ClientConfiguration &configuration);
 			SaeClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
@@ -469,9 +544,15 @@ namespace AlibabaCloud
 			CreateIngressOutcome createIngress(const Model::CreateIngressRequest &request)const;
 			void createIngressAsync(const Model::CreateIngressRequest& request, const CreateIngressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateIngressOutcomeCallable createIngressCallable(const Model::CreateIngressRequest& request) const;
+			CreateJobOutcome createJob(const Model::CreateJobRequest &request)const;
+			void createJobAsync(const Model::CreateJobRequest& request, const CreateJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateJobOutcomeCallable createJobCallable(const Model::CreateJobRequest& request) const;
 			CreateNamespaceOutcome createNamespace(const Model::CreateNamespaceRequest &request)const;
 			void createNamespaceAsync(const Model::CreateNamespaceRequest& request, const CreateNamespaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateNamespaceOutcomeCallable createNamespaceCallable(const Model::CreateNamespaceRequest& request) const;
+			CreateSecretOutcome createSecret(const Model::CreateSecretRequest &request)const;
+			void createSecretAsync(const Model::CreateSecretRequest& request, const CreateSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateSecretOutcomeCallable createSecretCallable(const Model::CreateSecretRequest& request) const;
 			DeleteApplicationOutcome deleteApplication(const Model::DeleteApplicationRequest &request)const;
 			void deleteApplicationAsync(const Model::DeleteApplicationRequest& request, const DeleteApplicationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteApplicationOutcomeCallable deleteApplicationCallable(const Model::DeleteApplicationRequest& request) const;
@@ -484,12 +565,21 @@ namespace AlibabaCloud
 			DeleteGreyTagRouteOutcome deleteGreyTagRoute(const Model::DeleteGreyTagRouteRequest &request)const;
 			void deleteGreyTagRouteAsync(const Model::DeleteGreyTagRouteRequest& request, const DeleteGreyTagRouteAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteGreyTagRouteOutcomeCallable deleteGreyTagRouteCallable(const Model::DeleteGreyTagRouteRequest& request) const;
+			DeleteHistoryJobOutcome deleteHistoryJob(const Model::DeleteHistoryJobRequest &request)const;
+			void deleteHistoryJobAsync(const Model::DeleteHistoryJobRequest& request, const DeleteHistoryJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteHistoryJobOutcomeCallable deleteHistoryJobCallable(const Model::DeleteHistoryJobRequest& request) const;
 			DeleteIngressOutcome deleteIngress(const Model::DeleteIngressRequest &request)const;
 			void deleteIngressAsync(const Model::DeleteIngressRequest& request, const DeleteIngressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteIngressOutcomeCallable deleteIngressCallable(const Model::DeleteIngressRequest& request) const;
+			DeleteJobOutcome deleteJob(const Model::DeleteJobRequest &request)const;
+			void deleteJobAsync(const Model::DeleteJobRequest& request, const DeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteJobOutcomeCallable deleteJobCallable(const Model::DeleteJobRequest& request) const;
 			DeleteNamespaceOutcome deleteNamespace(const Model::DeleteNamespaceRequest &request)const;
 			void deleteNamespaceAsync(const Model::DeleteNamespaceRequest& request, const DeleteNamespaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteNamespaceOutcomeCallable deleteNamespaceCallable(const Model::DeleteNamespaceRequest& request) const;
+			DeleteSecretOutcome deleteSecret(const Model::DeleteSecretRequest &request)const;
+			void deleteSecretAsync(const Model::DeleteSecretRequest& request, const DeleteSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteSecretOutcomeCallable deleteSecretCallable(const Model::DeleteSecretRequest& request) const;
 			DeployApplicationOutcome deployApplication(const Model::DeployApplicationRequest &request)const;
 			void deployApplicationAsync(const Model::DeployApplicationRequest& request, const DeployApplicationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeployApplicationOutcomeCallable deployApplicationCallable(const Model::DeployApplicationRequest& request) const;
@@ -547,6 +637,15 @@ namespace AlibabaCloud
 			DescribeInstanceSpecificationsOutcome describeInstanceSpecifications(const Model::DescribeInstanceSpecificationsRequest &request)const;
 			void describeInstanceSpecificationsAsync(const Model::DescribeInstanceSpecificationsRequest& request, const DescribeInstanceSpecificationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeInstanceSpecificationsOutcomeCallable describeInstanceSpecificationsCallable(const Model::DescribeInstanceSpecificationsRequest& request) const;
+			DescribeJobOutcome describeJob(const Model::DescribeJobRequest &request)const;
+			void describeJobAsync(const Model::DescribeJobRequest& request, const DescribeJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeJobOutcomeCallable describeJobCallable(const Model::DescribeJobRequest& request) const;
+			DescribeJobHistoryOutcome describeJobHistory(const Model::DescribeJobHistoryRequest &request)const;
+			void describeJobHistoryAsync(const Model::DescribeJobHistoryRequest& request, const DescribeJobHistoryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeJobHistoryOutcomeCallable describeJobHistoryCallable(const Model::DescribeJobHistoryRequest& request) const;
+			DescribeJobStatusOutcome describeJobStatus(const Model::DescribeJobStatusRequest &request)const;
+			void describeJobStatusAsync(const Model::DescribeJobStatusRequest& request, const DescribeJobStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeJobStatusOutcomeCallable describeJobStatusCallable(const Model::DescribeJobStatusRequest& request) const;
 			DescribeNamespaceOutcome describeNamespace(const Model::DescribeNamespaceRequest &request)const;
 			void describeNamespaceAsync(const Model::DescribeNamespaceRequest& request, const DescribeNamespaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeNamespaceOutcomeCallable describeNamespaceCallable(const Model::DescribeNamespaceRequest& request) const;
@@ -565,12 +664,18 @@ namespace AlibabaCloud
 			DescribeRegionsOutcome describeRegions(const Model::DescribeRegionsRequest &request)const;
 			void describeRegionsAsync(const Model::DescribeRegionsRequest& request, const DescribeRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeRegionsOutcomeCallable describeRegionsCallable(const Model::DescribeRegionsRequest& request) const;
+			DescribeSecretOutcome describeSecret(const Model::DescribeSecretRequest &request)const;
+			void describeSecretAsync(const Model::DescribeSecretRequest& request, const DescribeSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSecretOutcomeCallable describeSecretCallable(const Model::DescribeSecretRequest& request) const;
 			DisableApplicationScalingRuleOutcome disableApplicationScalingRule(const Model::DisableApplicationScalingRuleRequest &request)const;
 			void disableApplicationScalingRuleAsync(const Model::DisableApplicationScalingRuleRequest& request, const DisableApplicationScalingRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DisableApplicationScalingRuleOutcomeCallable disableApplicationScalingRuleCallable(const Model::DisableApplicationScalingRuleRequest& request) const;
 			EnableApplicationScalingRuleOutcome enableApplicationScalingRule(const Model::EnableApplicationScalingRuleRequest &request)const;
 			void enableApplicationScalingRuleAsync(const Model::EnableApplicationScalingRuleRequest& request, const EnableApplicationScalingRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			EnableApplicationScalingRuleOutcomeCallable enableApplicationScalingRuleCallable(const Model::EnableApplicationScalingRuleRequest& request) const;
+			ExecJobOutcome execJob(const Model::ExecJobRequest &request)const;
+			void execJobAsync(const Model::ExecJobRequest& request, const ExecJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ExecJobOutcomeCallable execJobCallable(const Model::ExecJobRequest& request) const;
 			ListAppEventsOutcome listAppEvents(const Model::ListAppEventsRequest &request)const;
 			void listAppEventsAsync(const Model::ListAppEventsRequest& request, const ListAppEventsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListAppEventsOutcomeCallable listAppEventsCallable(const Model::ListAppEventsRequest& request) const;
@@ -595,6 +700,9 @@ namespace AlibabaCloud
 			ListIngressesOutcome listIngresses(const Model::ListIngressesRequest &request)const;
 			void listIngressesAsync(const Model::ListIngressesRequest& request, const ListIngressesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListIngressesOutcomeCallable listIngressesCallable(const Model::ListIngressesRequest& request) const;
+			ListJobsOutcome listJobs(const Model::ListJobsRequest &request)const;
+			void listJobsAsync(const Model::ListJobsRequest& request, const ListJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListJobsOutcomeCallable listJobsCallable(const Model::ListJobsRequest& request) const;
 			ListLogConfigsOutcome listLogConfigs(const Model::ListLogConfigsRequest &request)const;
 			void listLogConfigsAsync(const Model::ListLogConfigsRequest& request, const ListLogConfigsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListLogConfigsOutcomeCallable listLogConfigsCallable(const Model::ListLogConfigsRequest& request) const;
@@ -607,6 +715,9 @@ namespace AlibabaCloud
 			ListPublishedServicesOutcome listPublishedServices(const Model::ListPublishedServicesRequest &request)const;
 			void listPublishedServicesAsync(const Model::ListPublishedServicesRequest& request, const ListPublishedServicesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListPublishedServicesOutcomeCallable listPublishedServicesCallable(const Model::ListPublishedServicesRequest& request) const;
+			ListSecretsOutcome listSecrets(const Model::ListSecretsRequest &request)const;
+			void listSecretsAsync(const Model::ListSecretsRequest& request, const ListSecretsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListSecretsOutcomeCallable listSecretsCallable(const Model::ListSecretsRequest& request) const;
 			ListTagResourcesOutcome listTagResources(const Model::ListTagResourcesRequest &request)const;
 			void listTagResourcesAsync(const Model::ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListTagResourcesOutcomeCallable listTagResourcesCallable(const Model::ListTagResourcesRequest& request) const;
@@ -640,6 +751,9 @@ namespace AlibabaCloud
 			StopApplicationOutcome stopApplication(const Model::StopApplicationRequest &request)const;
 			void stopApplicationAsync(const Model::StopApplicationRequest& request, const StopApplicationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StopApplicationOutcomeCallable stopApplicationCallable(const Model::StopApplicationRequest& request) const;
+			SuspendJobOutcome suspendJob(const Model::SuspendJobRequest &request)const;
+			void suspendJobAsync(const Model::SuspendJobRequest& request, const SuspendJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SuspendJobOutcomeCallable suspendJobCallable(const Model::SuspendJobRequest& request) const;
 			TagResourcesOutcome tagResources(const Model::TagResourcesRequest &request)const;
 			void tagResourcesAsync(const Model::TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			TagResourcesOutcomeCallable tagResourcesCallable(const Model::TagResourcesRequest& request) const;
@@ -670,12 +784,18 @@ namespace AlibabaCloud
 			UpdateIngressOutcome updateIngress(const Model::UpdateIngressRequest &request)const;
 			void updateIngressAsync(const Model::UpdateIngressRequest& request, const UpdateIngressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateIngressOutcomeCallable updateIngressCallable(const Model::UpdateIngressRequest& request) const;
+			UpdateJobOutcome updateJob(const Model::UpdateJobRequest &request)const;
+			void updateJobAsync(const Model::UpdateJobRequest& request, const UpdateJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateJobOutcomeCallable updateJobCallable(const Model::UpdateJobRequest& request) const;
 			UpdateNamespaceOutcome updateNamespace(const Model::UpdateNamespaceRequest &request)const;
 			void updateNamespaceAsync(const Model::UpdateNamespaceRequest& request, const UpdateNamespaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateNamespaceOutcomeCallable updateNamespaceCallable(const Model::UpdateNamespaceRequest& request) const;
 			UpdateNamespaceVpcOutcome updateNamespaceVpc(const Model::UpdateNamespaceVpcRequest &request)const;
 			void updateNamespaceVpcAsync(const Model::UpdateNamespaceVpcRequest& request, const UpdateNamespaceVpcAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateNamespaceVpcOutcomeCallable updateNamespaceVpcCallable(const Model::UpdateNamespaceVpcRequest& request) const;
+			UpdateSecretOutcome updateSecret(const Model::UpdateSecretRequest &request)const;
+			void updateSecretAsync(const Model::UpdateSecretRequest& request, const UpdateSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateSecretOutcomeCallable updateSecretCallable(const Model::UpdateSecretRequest& request) const;
 	
 		private:
 			std::shared_ptr<EndpointProvider> endpointProvider_;

+ 24 - 12
sae/include/alibabacloud/sae/model/CreateApplicationRequest.h

@@ -36,14 +36,14 @@ public:
 	void setJarStartArgs(const std::string &jarStartArgs);
 	std::string getOssAkSecret() const;
 	void setOssAkSecret(const std::string &ossAkSecret);
+	std::string getNasConfigs() const;
+	void setNasConfigs(const std::string &nasConfigs);
 	std::string getMountHost() const;
 	void setMountHost(const std::string &mountHost);
 	bool getAutoConfig() const;
 	void setAutoConfig(bool autoConfig);
 	std::string getEnvs() const;
 	void setEnvs(const std::string &envs);
-	std::string getKafkaInstanceId() const;
-	void setKafkaInstanceId(const std::string &kafkaInstanceId);
 	std::string getPhpPECLExtensions() const;
 	void setPhpPECLExtensions(const std::string &phpPECLExtensions);
 	std::string getPhpArmsConfigLocation() const;
@@ -62,14 +62,18 @@ public:
 	void setNamespaceId(const std::string &namespaceId);
 	bool getPurchaseEip() const;
 	void setPurchaseEip(bool purchaseEip);
+	std::string getPvtzDiscoverySvc() const;
+	void setPvtzDiscoverySvc(const std::string &pvtzDiscoverySvc);
 	std::string getConfigMapMountDesc() const;
 	void setConfigMapMountDesc(const std::string &configMapMountDesc);
 	std::string getOssMountDescs() const;
 	void setOssMountDescs(const std::string &ossMountDescs);
-	std::string getKafkaEndpoint() const;
-	void setKafkaEndpoint(const std::string &kafkaEndpoint);
+	std::string getImagePullSecrets() const;
+	void setImagePullSecrets(const std::string &imagePullSecrets);
 	std::string getPreStop() const;
 	void setPreStop(const std::string &preStop);
+	std::string getPython() const;
+	void setPython(const std::string &python);
 	int getCpu() const;
 	void setCpu(int cpu);
 	std::string getVSwitchId() const;
@@ -90,8 +94,6 @@ public:
 	void setSlsConfigs(const std::string &slsConfigs);
 	std::string getKafkaConfigs() const;
 	void setKafkaConfigs(const std::string &kafkaConfigs);
-	bool getOpenCollectToKafka() const;
-	void setOpenCollectToKafka(bool openCollectToKafka);
 	std::string getCommandArgs() const;
 	void setCommandArgs(const std::string &commandArgs);
 	std::string getAcrAssumeRoleArn() const;
@@ -112,6 +114,8 @@ public:
 	void setTomcatConfig(const std::string &tomcatConfig);
 	std::string getWarStartOptions() const;
 	void setWarStartOptions(const std::string &warStartOptions);
+	std::string getPackageRuntimeCustomBuild() const;
+	void setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild);
 	std::string getEdasContainerVersion() const;
 	void setEdasContainerVersion(const std::string &edasContainerVersion);
 	std::string getPackageUrl() const;
@@ -120,6 +124,10 @@ public:
 	void setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds);
 	std::string getPhpConfig() const;
 	void setPhpConfig(const std::string &phpConfig);
+	bool getEnableImageAccl() const;
+	void setEnableImageAccl(bool enableImageAccl);
+	std::string getMicroRegistration() const;
+	void setMicroRegistration(const std::string &microRegistration);
 	int getReplicas() const;
 	void setReplicas(int replicas);
 	std::string getCommand() const;
@@ -130,8 +138,6 @@ public:
 	void setJdk(const std::string &jdk);
 	std::string getAppDescription() const;
 	void setAppDescription(const std::string &appDescription);
-	std::string getKafkaLogfileConfig() const;
-	void setKafkaLogfileConfig(const std::string &kafkaLogfileConfig);
 	std::string getAcrInstanceId() const;
 	void setAcrInstanceId(const std::string &acrInstanceId);
 	std::string getVpcId() const;
@@ -140,6 +146,8 @@ public:
 	void setImageUrl(const std::string &imageUrl);
 	std::string getPhp() const;
 	void setPhp(const std::string &php);
+	std::string getPythonModules() const;
+	void setPythonModules(const std::string &pythonModules);
 	std::string getPhpConfigLocation() const;
 	void setPhpConfigLocation(const std::string &phpConfigLocation);
 
@@ -147,10 +155,10 @@ private:
 	std::string nasId_;
 	std::string jarStartArgs_;
 	std::string ossAkSecret_;
+	std::string nasConfigs_;
 	std::string mountHost_;
 	bool autoConfig_;
 	std::string envs_;
-	std::string kafkaInstanceId_;
 	std::string phpPECLExtensions_;
 	std::string phpArmsConfigLocation_;
 	std::string programmingLanguage_;
@@ -160,10 +168,12 @@ private:
 	std::string appName_;
 	std::string namespaceId_;
 	bool purchaseEip_;
+	std::string pvtzDiscoverySvc_;
 	std::string configMapMountDesc_;
 	std::string ossMountDescs_;
-	std::string kafkaEndpoint_;
+	std::string imagePullSecrets_;
 	std::string preStop_;
+	std::string python_;
 	int cpu_;
 	std::string vSwitchId_;
 	std::string packageType_;
@@ -174,7 +184,6 @@ private:
 	int memory_;
 	std::string slsConfigs_;
 	std::string kafkaConfigs_;
-	bool openCollectToKafka_;
 	std::string commandArgs_;
 	std::string acrAssumeRoleArn_;
 	std::string readiness_;
@@ -185,20 +194,23 @@ private:
 	std::string packageVersion_;
 	std::string tomcatConfig_;
 	std::string warStartOptions_;
+	std::string packageRuntimeCustomBuild_;
 	std::string edasContainerVersion_;
 	std::string packageUrl_;
 	int terminationGracePeriodSeconds_;
 	std::string phpConfig_;
+	bool enableImageAccl_;
+	std::string microRegistration_;
 	int replicas_;
 	std::string command_;
 	std::string mountDesc_;
 	std::string jdk_;
 	std::string appDescription_;
-	std::string kafkaLogfileConfig_;
 	std::string acrInstanceId_;
 	std::string vpcId_;
 	std::string imageUrl_;
 	std::string php_;
+	std::string pythonModules_;
 	std::string phpConfigLocation_;
 };
 } // namespace Model

+ 3 - 0
sae/include/alibabacloud/sae/model/CreateIngressRequest.h

@@ -44,6 +44,8 @@ public:
 	void setRules(const std::string &rules);
 	std::string getCertId() const;
 	void setCertId(const std::string &certId);
+	std::string getCertIds() const;
+	void setCertIds(const std::string &certIds);
 	std::string getListenerProtocol() const;
 	void setListenerProtocol(const std::string &listenerProtocol);
 	std::string getDefaultRule() const;
@@ -57,6 +59,7 @@ private:
 	std::string loadBalanceType_;
 	std::string rules_;
 	std::string certId_;
+	std::string certIds_;
 	std::string listenerProtocol_;
 	std::string defaultRule_;
 };

+ 228 - 0
sae/include/alibabacloud/sae/model/CreateJobRequest.h

@@ -0,0 +1,228 @@
+/*
+ * 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_SAE_MODEL_CREATEJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_CREATEJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT CreateJobRequest : public RoaServiceRequest {
+public:
+	CreateJobRequest();
+	~CreateJobRequest();
+	std::string getNasId() const;
+	void setNasId(const std::string &nasId);
+	std::string getJarStartArgs() const;
+	void setJarStartArgs(const std::string &jarStartArgs);
+	std::string getConcurrencyPolicy() const;
+	void setConcurrencyPolicy(const std::string &concurrencyPolicy);
+	std::string getTriggerConfig() const;
+	void setTriggerConfig(const std::string &triggerConfig);
+	std::string getOssAkSecret() const;
+	void setOssAkSecret(const std::string &ossAkSecret);
+	std::string getMountHost() const;
+	void setMountHost(const std::string &mountHost);
+	bool getAutoConfig() const;
+	void setAutoConfig(bool autoConfig);
+	std::string getEnvs() const;
+	void setEnvs(const std::string &envs);
+	std::string getPhpPECLExtensions() const;
+	void setPhpPECLExtensions(const std::string &phpPECLExtensions);
+	std::string getPhpArmsConfigLocation() const;
+	void setPhpArmsConfigLocation(const std::string &phpArmsConfigLocation);
+	std::string getProgrammingLanguage() const;
+	void setProgrammingLanguage(const std::string &programmingLanguage);
+	std::string getCustomHostAlias() const;
+	void setCustomHostAlias(const std::string &customHostAlias);
+	bool getDeploy() const;
+	void setDeploy(bool deploy);
+	std::string getJarStartOptions() const;
+	void setJarStartOptions(const std::string &jarStartOptions);
+	std::string getAppName() const;
+	void setAppName(const std::string &appName);
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	bool getSlice() const;
+	void setSlice(bool slice);
+	std::string getConfigMapMountDesc() const;
+	void setConfigMapMountDesc(const std::string &configMapMountDesc);
+	std::string getOssMountDescs() const;
+	void setOssMountDescs(const std::string &ossMountDescs);
+	std::string getImagePullSecrets() const;
+	void setImagePullSecrets(const std::string &imagePullSecrets);
+	std::string getPreStop() const;
+	void setPreStop(const std::string &preStop);
+	std::string getPython() const;
+	void setPython(const std::string &python);
+	int getCpu() const;
+	void setCpu(int cpu);
+	long getBackoffLimit() const;
+	void setBackoffLimit(long backoffLimit);
+	std::string getVSwitchId() const;
+	void setVSwitchId(const std::string &vSwitchId);
+	std::string getPackageType() const;
+	void setPackageType(const std::string &packageType);
+	std::string getPostStart() const;
+	void setPostStart(const std::string &postStart);
+	std::string getPhpExtensions() const;
+	void setPhpExtensions(const std::string &phpExtensions);
+	bool getAssociateEip() const;
+	void setAssociateEip(bool associateEip);
+	std::string getWebContainer() const;
+	void setWebContainer(const std::string &webContainer);
+	int getMemory() const;
+	void setMemory(int memory);
+	std::string getSlsConfigs() const;
+	void setSlsConfigs(const std::string &slsConfigs);
+	std::string getCommandArgs() const;
+	void setCommandArgs(const std::string &commandArgs);
+	std::string getAcrAssumeRoleArn() const;
+	void setAcrAssumeRoleArn(const std::string &acrAssumeRoleArn);
+	std::string getReadiness() const;
+	void setReadiness(const std::string &readiness);
+	std::string getTimezone() const;
+	void setTimezone(const std::string &timezone);
+	std::string getOssAkId() const;
+	void setOssAkId(const std::string &ossAkId);
+	std::string getLiveness() const;
+	void setLiveness(const std::string &liveness);
+	std::string getSecurityGroupId() const;
+	void setSecurityGroupId(const std::string &securityGroupId);
+	std::string getPackageVersion() const;
+	void setPackageVersion(const std::string &packageVersion);
+	std::string getTomcatConfig() const;
+	void setTomcatConfig(const std::string &tomcatConfig);
+	long getTimeout() const;
+	void setTimeout(long timeout);
+	std::string getWarStartOptions() const;
+	void setWarStartOptions(const std::string &warStartOptions);
+	std::string getPackageRuntimeCustomBuild() const;
+	void setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild);
+	std::string getEdasContainerVersion() const;
+	void setEdasContainerVersion(const std::string &edasContainerVersion);
+	std::string getPackageUrl() const;
+	void setPackageUrl(const std::string &packageUrl);
+	int getTerminationGracePeriodSeconds() const;
+	void setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds);
+	std::string getPhpConfig() const;
+	void setPhpConfig(const std::string &phpConfig);
+	std::string getSliceEnvs() const;
+	void setSliceEnvs(const std::string &sliceEnvs);
+	bool getEnableImageAccl() const;
+	void setEnableImageAccl(bool enableImageAccl);
+	int getReplicas() const;
+	void setReplicas(int replicas);
+	std::string getWorkload() const;
+	void setWorkload(const std::string &workload);
+	std::string getCommand() const;
+	void setCommand(const std::string &command);
+	std::string getMountDesc() const;
+	void setMountDesc(const std::string &mountDesc);
+	std::string getJdk() const;
+	void setJdk(const std::string &jdk);
+	std::string getAppDescription() const;
+	void setAppDescription(const std::string &appDescription);
+	std::string getAcrInstanceId() const;
+	void setAcrInstanceId(const std::string &acrInstanceId);
+	std::string getVpcId() const;
+	void setVpcId(const std::string &vpcId);
+	std::string getImageUrl() const;
+	void setImageUrl(const std::string &imageUrl);
+	std::string getPhp() const;
+	void setPhp(const std::string &php);
+	std::string getRefAppId() const;
+	void setRefAppId(const std::string &refAppId);
+	std::string getPythonModules() const;
+	void setPythonModules(const std::string &pythonModules);
+	std::string getPhpConfigLocation() const;
+	void setPhpConfigLocation(const std::string &phpConfigLocation);
+
+private:
+	std::string nasId_;
+	std::string jarStartArgs_;
+	std::string concurrencyPolicy_;
+	std::string triggerConfig_;
+	std::string ossAkSecret_;
+	std::string mountHost_;
+	bool autoConfig_;
+	std::string envs_;
+	std::string phpPECLExtensions_;
+	std::string phpArmsConfigLocation_;
+	std::string programmingLanguage_;
+	std::string customHostAlias_;
+	bool deploy_;
+	std::string jarStartOptions_;
+	std::string appName_;
+	std::string namespaceId_;
+	bool slice_;
+	std::string configMapMountDesc_;
+	std::string ossMountDescs_;
+	std::string imagePullSecrets_;
+	std::string preStop_;
+	std::string python_;
+	int cpu_;
+	long backoffLimit_;
+	std::string vSwitchId_;
+	std::string packageType_;
+	std::string postStart_;
+	std::string phpExtensions_;
+	bool associateEip_;
+	std::string webContainer_;
+	int memory_;
+	std::string slsConfigs_;
+	std::string commandArgs_;
+	std::string acrAssumeRoleArn_;
+	std::string readiness_;
+	std::string timezone_;
+	std::string ossAkId_;
+	std::string liveness_;
+	std::string securityGroupId_;
+	std::string packageVersion_;
+	std::string tomcatConfig_;
+	long timeout_;
+	std::string warStartOptions_;
+	std::string packageRuntimeCustomBuild_;
+	std::string edasContainerVersion_;
+	std::string packageUrl_;
+	int terminationGracePeriodSeconds_;
+	std::string phpConfig_;
+	std::string sliceEnvs_;
+	bool enableImageAccl_;
+	int replicas_;
+	std::string workload_;
+	std::string command_;
+	std::string mountDesc_;
+	std::string jdk_;
+	std::string appDescription_;
+	std::string acrInstanceId_;
+	std::string vpcId_;
+	std::string imageUrl_;
+	std::string php_;
+	std::string refAppId_;
+	std::string pythonModules_;
+	std::string phpConfigLocation_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_CREATEJOBREQUEST_H_

+ 66 - 0
sae/include/alibabacloud/sae/model/CreateJobResult.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_SAE_MODEL_CREATEJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_CREATEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT CreateJobResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string appId;
+					std::string changeOrderId;
+				};
+
+
+				CreateJobResult();
+				explicit CreateJobResult(const std::string &payload);
+				~CreateJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_CREATEJOBRESULT_H_

+ 51 - 0
sae/include/alibabacloud/sae/model/CreateSecretRequest.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_SAE_MODEL_CREATESECRETREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_CREATESECRETREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT CreateSecretRequest : public RoaServiceRequest {
+public:
+	CreateSecretRequest();
+	~CreateSecretRequest();
+	std::string getSecretType() const;
+	void setSecretType(const std::string &secretType);
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	std::string getSecretData() const;
+	void setSecretData(const std::string &secretData);
+	std::string getSecretName() const;
+	void setSecretName(const std::string &secretName);
+
+private:
+	std::string secretType_;
+	std::string namespaceId_;
+	std::string secretData_;
+	std::string secretName_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_CREATESECRETREQUEST_H_

+ 65 - 0
sae/include/alibabacloud/sae/model/CreateSecretResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_SAE_MODEL_CREATESECRETRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_CREATESECRETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT CreateSecretResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					long secretId;
+				};
+
+
+				CreateSecretResult();
+				explicit CreateSecretResult(const std::string &payload);
+				~CreateSecretResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_CREATESECRETRESULT_H_

+ 45 - 0
sae/include/alibabacloud/sae/model/DeleteHistoryJobRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_SAE_MODEL_DELETEHISTORYJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETEHISTORYJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DeleteHistoryJobRequest : public RoaServiceRequest {
+public:
+	DeleteHistoryJobRequest();
+	~DeleteHistoryJobRequest();
+	std::string getJobId() const;
+	void setJobId(const std::string &jobId);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	std::string jobId_;
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETEHISTORYJOBREQUEST_H_

+ 61 - 0
sae/include/alibabacloud/sae/model/DeleteHistoryJobResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_DELETEHISTORYJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETEHISTORYJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DeleteHistoryJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteHistoryJobResult();
+				explicit DeleteHistoryJobResult(const std::string &payload);
+				~DeleteHistoryJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				std::string getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				std::string data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETEHISTORYJOBRESULT_H_

+ 42 - 0
sae/include/alibabacloud/sae/model/DeleteJobRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_SAE_MODEL_DELETEJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETEJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DeleteJobRequest : public RoaServiceRequest {
+public:
+	DeleteJobRequest();
+	~DeleteJobRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETEJOBREQUEST_H_

+ 61 - 0
sae/include/alibabacloud/sae/model/DeleteJobResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_DELETEJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DeleteJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteJobResult();
+				explicit DeleteJobResult(const std::string &payload);
+				~DeleteJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				std::string getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				std::string data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETEJOBRESULT_H_

+ 45 - 0
sae/include/alibabacloud/sae/model/DeleteSecretRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_SAE_MODEL_DELETESECRETREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETESECRETREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DeleteSecretRequest : public RoaServiceRequest {
+public:
+	DeleteSecretRequest();
+	~DeleteSecretRequest();
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	long getSecretId() const;
+	void setSecretId(long secretId);
+
+private:
+	std::string namespaceId_;
+	long secretId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETESECRETREQUEST_H_

+ 65 - 0
sae/include/alibabacloud/sae/model/DeleteSecretResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_SAE_MODEL_DELETESECRETRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DELETESECRETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DeleteSecretResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					long secretId;
+				};
+
+
+				DeleteSecretResult();
+				explicit DeleteSecretResult(const std::string &payload);
+				~DeleteSecretResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DELETESECRETRESULT_H_

+ 27 - 12
sae/include/alibabacloud/sae/model/DeployApplicationRequest.h

@@ -36,30 +36,36 @@ public:
 	void setJarStartArgs(const std::string &jarStartArgs);
 	std::string getOssAkSecret() const;
 	void setOssAkSecret(const std::string &ossAkSecret);
+	std::string getNasConfigs() const;
+	void setNasConfigs(const std::string &nasConfigs);
 	std::string getMountHost() const;
 	void setMountHost(const std::string &mountHost);
 	int getBatchWaitTime() const;
 	void setBatchWaitTime(int batchWaitTime);
 	std::string getEnvs() const;
 	void setEnvs(const std::string &envs);
-	std::string getKafkaInstanceId() const;
-	void setKafkaInstanceId(const std::string &kafkaInstanceId);
 	std::string getPhpPECLExtensions() const;
 	void setPhpPECLExtensions(const std::string &phpPECLExtensions);
 	std::string getPhpArmsConfigLocation() const;
 	void setPhpArmsConfigLocation(const std::string &phpArmsConfigLocation);
 	std::string getCustomHostAlias() const;
 	void setCustomHostAlias(const std::string &customHostAlias);
+	std::string getDeploy() const;
+	void setDeploy(const std::string &deploy);
 	std::string getJarStartOptions() const;
 	void setJarStartOptions(const std::string &jarStartOptions);
+	std::string getPvtzDiscoverySvc() const;
+	void setPvtzDiscoverySvc(const std::string &pvtzDiscoverySvc);
 	std::string getConfigMapMountDesc() const;
 	void setConfigMapMountDesc(const std::string &configMapMountDesc);
 	std::string getOssMountDescs() const;
 	void setOssMountDescs(const std::string &ossMountDescs);
-	std::string getKafkaEndpoint() const;
-	void setKafkaEndpoint(const std::string &kafkaEndpoint);
+	std::string getImagePullSecrets() const;
+	void setImagePullSecrets(const std::string &imagePullSecrets);
 	std::string getPreStop() const;
 	void setPreStop(const std::string &preStop);
+	std::string getPython() const;
+	void setPython(const std::string &python);
 	std::string getUpdateStrategy() const;
 	void setUpdateStrategy(const std::string &updateStrategy);
 	std::string getChangeOrderDesc() const;
@@ -82,8 +88,6 @@ public:
 	void setSlsConfigs(const std::string &slsConfigs);
 	std::string getKafkaConfigs() const;
 	void setKafkaConfigs(const std::string &kafkaConfigs);
-	bool getOpenCollectToKafka() const;
-	void setOpenCollectToKafka(bool openCollectToKafka);
 	std::string getCommandArgs() const;
 	void setCommandArgs(const std::string &commandArgs);
 	std::string getAcrAssumeRoleArn() const;
@@ -102,6 +106,8 @@ public:
 	void setTomcatConfig(const std::string &tomcatConfig);
 	std::string getWarStartOptions() const;
 	void setWarStartOptions(const std::string &warStartOptions);
+	std::string getPackageRuntimeCustomBuild() const;
+	void setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild);
 	std::string getEdasContainerVersion() const;
 	void setEdasContainerVersion(const std::string &edasContainerVersion);
 	std::string getPackageUrl() const;
@@ -110,6 +116,10 @@ public:
 	void setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds);
 	std::string getPhpConfig() const;
 	void setPhpConfig(const std::string &phpConfig);
+	bool getEnableImageAccl() const;
+	void setEnableImageAccl(bool enableImageAccl);
+	std::string getMicroRegistration() const;
+	void setMicroRegistration(const std::string &microRegistration);
 	bool getEnableGreyTagRoute() const;
 	void setEnableGreyTagRoute(bool enableGreyTagRoute);
 	std::string getCommand() const;
@@ -120,8 +130,6 @@ public:
 	void setJdk(const std::string &jdk);
 	int getMinReadyInstances() const;
 	void setMinReadyInstances(int minReadyInstances);
-	std::string getKafkaLogfileConfig() const;
-	void setKafkaLogfileConfig(const std::string &kafkaLogfileConfig);
 	std::string getAcrInstanceId() const;
 	void setAcrInstanceId(const std::string &acrInstanceId);
 	std::string getAppId() const;
@@ -130,6 +138,8 @@ public:
 	void setImageUrl(const std::string &imageUrl);
 	std::string getPhp() const;
 	void setPhp(const std::string &php);
+	std::string getPythonModules() const;
+	void setPythonModules(const std::string &pythonModules);
 	std::string getPhpConfigLocation() const;
 	void setPhpConfigLocation(const std::string &phpConfigLocation);
 
@@ -137,18 +147,21 @@ private:
 	std::string nasId_;
 	std::string jarStartArgs_;
 	std::string ossAkSecret_;
+	std::string nasConfigs_;
 	std::string mountHost_;
 	int batchWaitTime_;
 	std::string envs_;
-	std::string kafkaInstanceId_;
 	std::string phpPECLExtensions_;
 	std::string phpArmsConfigLocation_;
 	std::string customHostAlias_;
+	std::string deploy_;
 	std::string jarStartOptions_;
+	std::string pvtzDiscoverySvc_;
 	std::string configMapMountDesc_;
 	std::string ossMountDescs_;
-	std::string kafkaEndpoint_;
+	std::string imagePullSecrets_;
 	std::string preStop_;
+	std::string python_;
 	std::string updateStrategy_;
 	std::string changeOrderDesc_;
 	int minReadyInstanceRatio_;
@@ -160,7 +173,6 @@ private:
 	std::string enableAhas_;
 	std::string slsConfigs_;
 	std::string kafkaConfigs_;
-	bool openCollectToKafka_;
 	std::string commandArgs_;
 	std::string acrAssumeRoleArn_;
 	std::string readiness_;
@@ -170,20 +182,23 @@ private:
 	std::string packageVersion_;
 	std::string tomcatConfig_;
 	std::string warStartOptions_;
+	std::string packageRuntimeCustomBuild_;
 	std::string edasContainerVersion_;
 	std::string packageUrl_;
 	int terminationGracePeriodSeconds_;
 	std::string phpConfig_;
+	bool enableImageAccl_;
+	std::string microRegistration_;
 	bool enableGreyTagRoute_;
 	std::string command_;
 	std::string mountDesc_;
 	std::string jdk_;
 	int minReadyInstances_;
-	std::string kafkaLogfileConfig_;
 	std::string acrInstanceId_;
 	std::string appId_;
 	std::string imageUrl_;
 	std::string php_;
+	std::string pythonModules_;
 	std::string phpConfigLocation_;
 };
 } // namespace Model

+ 8 - 0
sae/include/alibabacloud/sae/model/DescribeApplicationConfigResult.h

@@ -66,6 +66,7 @@ namespace AlibabaCloud
 					int memory;
 					std::string webContainer;
 					int cpu;
+					std::string nasConfigs;
 					std::string jarStartArgs;
 					std::string preStop;
 					int minReadyInstances;
@@ -73,6 +74,7 @@ namespace AlibabaCloud
 					std::string packageType;
 					std::vector<Tag> tags;
 					std::string ossAkSecret;
+					std::string python;
 					std::string mseApplicationId;
 					std::string vSwitchId;
 					std::string imageUrl;
@@ -83,20 +85,24 @@ namespace AlibabaCloud
 					std::string appId;
 					std::string edasContainerVersion;
 					std::string namespaceId;
+					bool enableImageAccl;
 					std::string tomcatConfig;
 					std::string appDescription;
 					std::string nasId;
 					std::string acrInstanceId;
+					std::string pythonModules;
 					std::string kafkaConfigs;
 					std::string slsConfigs;
 					std::string updateStrategy;
 					std::string ossAkId;
+					std::string pvtzDiscovery;
 					std::vector<OssMountDesc> ossMountDescs;
 					std::string packageVersion;
 					std::string appName;
 					bool enableGreyTagRoute;
 					std::string jdk;
 					std::string readiness;
+					std::string microRegistration;
 					std::string php;
 					std::string commandArgs;
 					std::string acrAssumeRoleArn;
@@ -105,8 +111,10 @@ namespace AlibabaCloud
 					std::string envs;
 					std::string jarStartOptions;
 					std::string mountHost;
+					std::string imagePullSecrets;
 					int replicas;
 					std::string customHostAlias;
+					std::string packageRuntimeCustomBuild;
 					std::string command;
 					bool associateEip;
 					std::string packageUrl;

+ 4 - 3
sae/include/alibabacloud/sae/model/DescribeApplicationInstancesResult.h

@@ -37,17 +37,18 @@ namespace AlibabaCloud
 					struct Instance
 					{
 						std::string instanceHealthStatus;
-						std::string instanceContainerIp;
 						std::string instanceId;
 						std::string vSwitchId;
 						std::string imageUrl;
 						long finishTimeStamp;
 						long instanceContainerRestarts;
-						std::string instanceContainerStatus;
+						bool debugStatus;
 						std::string packageVersion;
 						std::string eip;
-						long createTimeStamp;
 						std::string groupId;
+						std::string instanceContainerIp;
+						std::string instanceContainerStatus;
+						long createTimeStamp;
 					};
 					std::vector<Instance> instances;
 					int pageSize;

+ 2 - 0
sae/include/alibabacloud/sae/model/DescribeApplicationSlbsResult.h

@@ -50,8 +50,10 @@ namespace AlibabaCloud
 					};
 					std::string internetSlbId;
 					std::string internetIp;
+					bool internetSlbExpired;
 					std::vector<IntranetItem> intranet;
 					std::string intranetSlbId;
+					bool intranetSlbExpired;
 					std::vector<InternetItem> internet;
 					std::string intranetIp;
 				};

+ 3 - 0
sae/include/alibabacloud/sae/model/DescribeConfigurationPriceRequest.h

@@ -34,10 +34,13 @@ public:
 	void setMemory(int memory);
 	int getCpu() const;
 	void setCpu(int cpu);
+	std::string getWorkload() const;
+	void setWorkload(const std::string &workload);
 
 private:
 	int memory_;
 	int cpu_;
+	std::string workload_;
 };
 } // namespace Model
 } // namespace Sae

+ 6 - 3
sae/include/alibabacloud/sae/model/DescribeIngressResult.h

@@ -36,6 +36,7 @@ namespace AlibabaCloud
 				{
 					struct DefaultRule
 					{
+						std::string backendProtocol;
 						std::string appId;
 						int containerPort;
 						std::string appName;
@@ -43,6 +44,7 @@ namespace AlibabaCloud
 					struct Rule
 					{
 						std::string path;
+						std::string backendProtocol;
 						std::string appId;
 						int containerPort;
 						std::string domain;
@@ -52,14 +54,15 @@ namespace AlibabaCloud
 					std::string slbId;
 					int listenerPort;
 					std::string description;
+					std::string certIds;
 					std::string certId;
+					std::string listenerProtocol;
+					std::vector<Rule> rules;
+					std::string name;
 					std::string loadBalanceType;
 					std::string namespaceId;
 					long id;
-					std::string listenerProtocol;
-					std::vector<Rule> rules;
 					std::string slbType;
-					std::string name;
 				};
 
 

+ 51 - 0
sae/include/alibabacloud/sae/model/DescribeJobHistoryRequest.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_SAE_MODEL_DESCRIBEJOBHISTORYREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBHISTORYREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DescribeJobHistoryRequest : public RoaServiceRequest {
+public:
+	DescribeJobHistoryRequest();
+	~DescribeJobHistoryRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	long getPageSize() const;
+	void setPageSize(long pageSize);
+	long getCurrentPage() const;
+	void setCurrentPage(long currentPage);
+	std::string getState() const;
+	void setState(const std::string &state);
+
+private:
+	std::string appId_;
+	long pageSize_;
+	long currentPage_;
+	std::string state_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBHISTORYREQUEST_H_

+ 79 - 0
sae/include/alibabacloud/sae/model/DescribeJobHistoryResult.h

@@ -0,0 +1,79 @@
+/*
+ * 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_SAE_MODEL_DESCRIBEJOBHISTORYRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBHISTORYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeJobHistoryResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct Job
+					{
+						long succeeded;
+						long active;
+						std::string message;
+						long failed;
+						long completionTime;
+						std::string state;
+						long startTime;
+						std::string jobId;
+					};
+					long pageSize;
+					std::vector<Job> jobs;
+					long currentPage;
+					long totalSize;
+				};
+
+
+				DescribeJobHistoryResult();
+				explicit DescribeJobHistoryResult(const std::string &payload);
+				~DescribeJobHistoryResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBHISTORYRESULT_H_

+ 48 - 0
sae/include/alibabacloud/sae/model/DescribeJobRequest.h

@@ -0,0 +1,48 @@
+/*
+ * 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_SAE_MODEL_DESCRIBEJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DescribeJobRequest : public RoaServiceRequest {
+public:
+	DescribeJobRequest();
+	~DescribeJobRequest();
+	std::string getJobId() const;
+	void setJobId(const std::string &jobId);
+	std::string getVersionId() const;
+	void setVersionId(const std::string &versionId);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	std::string jobId_;
+	std::string versionId_;
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBREQUEST_H_

+ 161 - 0
sae/include/alibabacloud/sae/model/DescribeJobResult.h

@@ -0,0 +1,161 @@
+/*
+ * 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_SAE_MODEL_DESCRIBEJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeJobResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct ConfigMapMountDescItem
+					{
+						std::string mountPath;
+						long configMapId;
+						std::string configMapName;
+						std::string key;
+					};
+					struct Tag
+					{
+						std::string value;
+						std::string key;
+					};
+					struct MountDescItem
+					{
+						std::string mountPath;
+						std::string nasPath;
+					};
+					struct OssMountDesc
+					{
+						std::string mountPath;
+						bool readOnly;
+						std::string bucketName;
+						std::string bucketPath;
+					};
+					std::string timezone;
+					std::string phpConfig;
+					std::vector<MountDescItem> mountDesc;
+					std::string liveness;
+					std::string warStartOptions;
+					std::string sliceEnvs;
+					int memory;
+					std::string webContainer;
+					std::string triggerConfig;
+					int cpu;
+					std::string nasConfigs;
+					std::string jarStartArgs;
+					std::vector<std::string> publicWebHookUrls;
+					std::string preStop;
+					int minReadyInstances;
+					std::string phpArmsConfigLocation;
+					std::string packageType;
+					std::vector<std::string> vpcWebHookUrls;
+					std::vector<Tag> tags;
+					std::string ossAkSecret;
+					std::string python;
+					std::string mseApplicationId;
+					std::string refAppId;
+					long timeout;
+					std::string vSwitchId;
+					std::string imageUrl;
+					std::string postStart;
+					std::vector<ConfigMapMountDescItem> configMapMountDesc;
+					std::string phpExtensions;
+					std::string vpcId;
+					std::string appId;
+					std::string edasContainerVersion;
+					std::string concurrencyPolicy;
+					bool slice;
+					std::string namespaceId;
+					bool enableImageAccl;
+					std::string tomcatConfig;
+					std::string appDescription;
+					std::string nasId;
+					std::string acrInstanceId;
+					std::string pythonModules;
+					std::vector<std::string> refedAppIds;
+					std::string slsConfigs;
+					std::string ossAkId;
+					bool suspend;
+					std::vector<OssMountDesc> ossMountDescs;
+					std::string packageVersion;
+					std::string appName;
+					bool enableGreyTagRoute;
+					std::string jdk;
+					long backoffLimit;
+					std::string readiness;
+					std::string php;
+					std::string commandArgs;
+					std::string acrAssumeRoleArn;
+					int terminationGracePeriodSeconds;
+					std::string securityGroupId;
+					std::string envs;
+					std::string jarStartOptions;
+					std::string mountHost;
+					std::string imagePullSecrets;
+					int replicas;
+					std::string customHostAlias;
+					std::string packageRuntimeCustomBuild;
+					std::string command;
+					bool associateEip;
+					std::string packageUrl;
+					std::string phpConfigLocation;
+					int batchWaitTime;
+					std::string phpPECLExtensions;
+					std::string regionId;
+					std::string programmingLanguage;
+					std::string enableAhas;
+				};
+
+
+				DescribeJobResult();
+				explicit DescribeJobResult(const std::string &payload);
+				~DescribeJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBRESULT_H_

+ 45 - 0
sae/include/alibabacloud/sae/model/DescribeJobStatusRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_SAE_MODEL_DESCRIBEJOBSTATUSREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBSTATUSREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DescribeJobStatusRequest : public RoaServiceRequest {
+public:
+	DescribeJobStatusRequest();
+	~DescribeJobStatusRequest();
+	std::string getJobId() const;
+	void setJobId(const std::string &jobId);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	std::string jobId_;
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBSTATUSREQUEST_H_

+ 72 - 0
sae/include/alibabacloud/sae/model/DescribeJobStatusResult.h

@@ -0,0 +1,72 @@
+/*
+ * 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_SAE_MODEL_DESCRIBEJOBSTATUSRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBSTATUSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeJobStatusResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					long succeeded;
+					long active;
+					std::string message;
+					long failed;
+					long completionTime;
+					std::string state;
+					long startTime;
+					std::string jobId;
+				};
+
+
+				DescribeJobStatusResult();
+				explicit DescribeJobStatusResult(const std::string &payload);
+				~DescribeJobStatusResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBEJOBSTATUSRESULT_H_

+ 1 - 0
sae/include/alibabacloud/sae/model/DescribeNamespaceResourcesResult.h

@@ -49,6 +49,7 @@ namespace AlibabaCloud
 					std::string vpcName;
 					std::string vSwitchName;
 					std::string namespaceId;
+					std::string jumpServerIp;
 					std::string lastChangeOrderStatus;
 					std::string jumpServerAppId;
 				};

+ 45 - 0
sae/include/alibabacloud/sae/model/DescribeSecretRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_SAE_MODEL_DESCRIBESECRETREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBESECRETREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT DescribeSecretRequest : public RoaServiceRequest {
+public:
+	DescribeSecretRequest();
+	~DescribeSecretRequest();
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	long getSecretId() const;
+	void setSecretId(long secretId);
+
+private:
+	std::string namespaceId_;
+	long secretId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBESECRETREQUEST_H_

+ 77 - 0
sae/include/alibabacloud/sae/model/DescribeSecretResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_DESCRIBESECRETRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_DESCRIBESECRETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT DescribeSecretResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct RelateApp
+					{
+						std::string appId;
+						std::string appName;
+					};
+					std::string secretName;
+					std::string secretType;
+					long secretId;
+					long createTime;
+					long updateTime;
+					std::vector<RelateApp> relateApps;
+					std::string namespaceId;
+					std::string secretData;
+				};
+
+
+				DescribeSecretResult();
+				explicit DescribeSecretResult(const std::string &payload);
+				~DescribeSecretResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_DESCRIBESECRETRESULT_H_

+ 66 - 0
sae/include/alibabacloud/sae/model/ExecJobRequest.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_SAE_MODEL_EXECJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_EXECJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT ExecJobRequest : public RoaServiceRequest {
+public:
+	ExecJobRequest();
+	~ExecJobRequest();
+	std::string getEventId() const;
+	void setEventId(const std::string &eventId);
+	std::string getJarStartOptions() const;
+	void setJarStartOptions(const std::string &jarStartOptions);
+	std::string getJarStartArgs() const;
+	void setJarStartArgs(const std::string &jarStartArgs);
+	std::string getCommandArgs() const;
+	void setCommandArgs(const std::string &commandArgs);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getEnvs() const;
+	void setEnvs(const std::string &envs);
+	std::string getTime() const;
+	void setTime(const std::string &time);
+	std::string getCommand() const;
+	void setCommand(const std::string &command);
+	std::string getWarStartOptions() const;
+	void setWarStartOptions(const std::string &warStartOptions);
+
+private:
+	std::string eventId_;
+	std::string jarStartOptions_;
+	std::string jarStartArgs_;
+	std::string commandArgs_;
+	std::string appId_;
+	std::string envs_;
+	std::string time_;
+	std::string command_;
+	std::string warStartOptions_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_EXECJOBREQUEST_H_

+ 68 - 0
sae/include/alibabacloud/sae/model/ExecJobResult.h

@@ -0,0 +1,68 @@
+/*
+ * 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_SAE_MODEL_EXECJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_EXECJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT ExecJobResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string msg;
+					std::string data;
+					std::string code;
+					std::string success;
+				};
+
+
+				ExecJobResult();
+				explicit ExecJobResult(const std::string &payload);
+				~ExecJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_EXECJOBRESULT_H_

+ 1 - 0
sae/include/alibabacloud/sae/model/ListIngressesResult.h

@@ -39,6 +39,7 @@ namespace AlibabaCloud
 						std::string slbId;
 						std::string listenerPort;
 						std::string description;
+						std::string certIds;
 						std::string certId;
 						std::string loadBalanceType;
 						std::string namespaceId;

+ 69 - 0
sae/include/alibabacloud/sae/model/ListJobsRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_LISTJOBSREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_LISTJOBSREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT ListJobsRequest : public RoaServiceRequest {
+public:
+	ListJobsRequest();
+	~ListJobsRequest();
+	std::string getAppName() const;
+	void setAppName(const std::string &appName);
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getOrderBy() const;
+	void setOrderBy(const std::string &orderBy);
+	std::string getWorkload() const;
+	void setWorkload(const std::string &workload);
+	int getCurrentPage() const;
+	void setCurrentPage(int currentPage);
+	std::string getFieldValue() const;
+	void setFieldValue(const std::string &fieldValue);
+	bool getReverse() const;
+	void setReverse(bool reverse);
+	std::string getFieldType() const;
+	void setFieldType(const std::string &fieldType);
+	std::string getTags() const;
+	void setTags(const std::string &tags);
+
+private:
+	std::string appName_;
+	std::string namespaceId_;
+	int pageSize_;
+	std::string orderBy_;
+	std::string workload_;
+	int currentPage_;
+	std::string fieldValue_;
+	bool reverse_;
+	std::string fieldType_;
+	std::string tags_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_LISTJOBSREQUEST_H_

+ 100 - 0
sae/include/alibabacloud/sae/model/ListJobsResult.h

@@ -0,0 +1,100 @@
+/*
+ * 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_SAE_MODEL_LISTJOBSRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_LISTJOBSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT ListJobsResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct Application
+					{
+						struct TagsItem
+						{
+							std::string value;
+							std::string key;
+						};
+						bool scaleRuleEnabled;
+						std::string appDescription;
+						long failed;
+						std::string triggerConfig;
+						int runningInstances;
+						bool suspend;
+						std::string lastChangeorderState;
+						std::string scaleRuleType;
+						std::string appName;
+						int instances;
+						long succeeded;
+						long active;
+						std::string appId;
+						long completionTime;
+						std::string lastJobState;
+						long lastStartTime;
+						std::string namespaceId;
+						std::string regionId;
+						bool appDeletingStatus;
+						std::vector<Application::TagsItem> tags;
+					};
+					std::vector<Application> applications;
+					int pageSize;
+					int currentPage;
+					int totalSize;
+				};
+
+
+				ListJobsResult();
+				explicit ListJobsResult(const std::string &payload);
+				~ListJobsResult();
+				std::string getMessage()const;
+				int getPageSize()const;
+				int getCurrentPage()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				int getTotalSize()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				int pageSize_;
+				int currentPage_;
+				Data data_;
+				std::string errorCode_;
+				int totalSize_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_LISTJOBSRESULT_H_

+ 42 - 0
sae/include/alibabacloud/sae/model/ListSecretsRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_SAE_MODEL_LISTSECRETSREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_LISTSECRETSREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT ListSecretsRequest : public RoaServiceRequest {
+public:
+	ListSecretsRequest();
+	~ListSecretsRequest();
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+
+private:
+	std::string namespaceId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_LISTSECRETSREQUEST_H_

+ 81 - 0
sae/include/alibabacloud/sae/model/ListSecretsResult.h

@@ -0,0 +1,81 @@
+/*
+ * 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_SAE_MODEL_LISTSECRETSRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_LISTSECRETSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT ListSecretsResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct Secret
+					{
+						struct RelateApp
+						{
+							std::string appId;
+							std::string appName;
+						};
+						std::string secretName;
+						std::string secretType;
+						long secretId;
+						long createTime;
+						long updateTime;
+						std::vector<Secret::RelateApp> relateApps;
+						std::string namespaceId;
+						std::string secretData;
+					};
+					std::vector<Secret> secrets;
+				};
+
+
+				ListSecretsResult();
+				explicit ListSecretsResult(const std::string &payload);
+				~ListSecretsResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_LISTSECRETSRESULT_H_

+ 45 - 0
sae/include/alibabacloud/sae/model/SuspendJobRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_SAE_MODEL_SUSPENDJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_SUSPENDJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT SuspendJobRequest : public RoaServiceRequest {
+public:
+	SuspendJobRequest();
+	~SuspendJobRequest();
+	bool getSuspend() const;
+	void setSuspend(bool suspend);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	bool suspend_;
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_SUSPENDJOBREQUEST_H_

+ 61 - 0
sae/include/alibabacloud/sae/model/SuspendJobResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_SAE_MODEL_SUSPENDJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_SUSPENDJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT SuspendJobResult : public ServiceResult
+			{
+			public:
+
+
+				SuspendJobResult();
+				explicit SuspendJobResult(const std::string &payload);
+				~SuspendJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				std::string getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				std::string data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_SUSPENDJOBRESULT_H_

+ 3 - 0
sae/include/alibabacloud/sae/model/UpdateIngressRequest.h

@@ -42,6 +42,8 @@ public:
 	void setRules(const std::string &rules);
 	std::string getCertId() const;
 	void setCertId(const std::string &certId);
+	std::string getCertIds() const;
+	void setCertIds(const std::string &certIds);
 	std::string getListenerProtocol() const;
 	void setListenerProtocol(const std::string &listenerProtocol);
 	std::string getDefaultRule() const;
@@ -54,6 +56,7 @@ private:
 	std::string loadBalanceType_;
 	std::string rules_;
 	std::string certId_;
+	std::string certIds_;
 	std::string listenerProtocol_;
 	std::string defaultRule_;
 };

+ 216 - 0
sae/include/alibabacloud/sae/model/UpdateJobRequest.h

@@ -0,0 +1,216 @@
+/*
+ * 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_SAE_MODEL_UPDATEJOBREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_UPDATEJOBREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT UpdateJobRequest : public RoaServiceRequest {
+public:
+	UpdateJobRequest();
+	~UpdateJobRequest();
+	std::string getNasId() const;
+	void setNasId(const std::string &nasId);
+	std::string getJarStartArgs() const;
+	void setJarStartArgs(const std::string &jarStartArgs);
+	std::string getConcurrencyPolicy() const;
+	void setConcurrencyPolicy(const std::string &concurrencyPolicy);
+	std::string getTriggerConfig() const;
+	void setTriggerConfig(const std::string &triggerConfig);
+	std::string getOssAkSecret() const;
+	void setOssAkSecret(const std::string &ossAkSecret);
+	std::string getMountHost() const;
+	void setMountHost(const std::string &mountHost);
+	int getBatchWaitTime() const;
+	void setBatchWaitTime(int batchWaitTime);
+	std::string getEnvs() const;
+	void setEnvs(const std::string &envs);
+	std::string getPhpPECLExtensions() const;
+	void setPhpPECLExtensions(const std::string &phpPECLExtensions);
+	std::string getPhpArmsConfigLocation() const;
+	void setPhpArmsConfigLocation(const std::string &phpArmsConfigLocation);
+	std::string getProgrammingLanguage() const;
+	void setProgrammingLanguage(const std::string &programmingLanguage);
+	std::string getCustomHostAlias() const;
+	void setCustomHostAlias(const std::string &customHostAlias);
+	std::string getJarStartOptions() const;
+	void setJarStartOptions(const std::string &jarStartOptions);
+	bool getSlice() const;
+	void setSlice(bool slice);
+	std::string getConfigMapMountDesc() const;
+	void setConfigMapMountDesc(const std::string &configMapMountDesc);
+	std::string getOssMountDescs() const;
+	void setOssMountDescs(const std::string &ossMountDescs);
+	std::string getImagePullSecrets() const;
+	void setImagePullSecrets(const std::string &imagePullSecrets);
+	std::string getPreStop() const;
+	void setPreStop(const std::string &preStop);
+	std::string getPython() const;
+	void setPython(const std::string &python);
+	long getBackoffLimit() const;
+	void setBackoffLimit(long backoffLimit);
+	std::string getUpdateStrategy() const;
+	void setUpdateStrategy(const std::string &updateStrategy);
+	std::string getChangeOrderDesc() const;
+	void setChangeOrderDesc(const std::string &changeOrderDesc);
+	bool getAutoEnableApplicationScalingRule() const;
+	void setAutoEnableApplicationScalingRule(bool autoEnableApplicationScalingRule);
+	std::string getPostStart() const;
+	void setPostStart(const std::string &postStart);
+	std::string getPhpExtensions() const;
+	void setPhpExtensions(const std::string &phpExtensions);
+	bool getAssociateEip() const;
+	void setAssociateEip(bool associateEip);
+	std::string getWebContainer() const;
+	void setWebContainer(const std::string &webContainer);
+	std::string getEnableAhas() const;
+	void setEnableAhas(const std::string &enableAhas);
+	std::string getSlsConfigs() const;
+	void setSlsConfigs(const std::string &slsConfigs);
+	std::string getCommandArgs() const;
+	void setCommandArgs(const std::string &commandArgs);
+	std::string getAcrAssumeRoleArn() const;
+	void setAcrAssumeRoleArn(const std::string &acrAssumeRoleArn);
+	std::string getReadiness() const;
+	void setReadiness(const std::string &readiness);
+	std::string getTimezone() const;
+	void setTimezone(const std::string &timezone);
+	std::string getOssAkId() const;
+	void setOssAkId(const std::string &ossAkId);
+	std::string getLiveness() const;
+	void setLiveness(const std::string &liveness);
+	std::string getPackageVersion() const;
+	void setPackageVersion(const std::string &packageVersion);
+	std::string getTomcatConfig() const;
+	void setTomcatConfig(const std::string &tomcatConfig);
+	long getTimeout() const;
+	void setTimeout(long timeout);
+	std::string getWarStartOptions() const;
+	void setWarStartOptions(const std::string &warStartOptions);
+	std::string getPackageRuntimeCustomBuild() const;
+	void setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild);
+	std::string getEdasContainerVersion() const;
+	void setEdasContainerVersion(const std::string &edasContainerVersion);
+	std::string getPackageUrl() const;
+	void setPackageUrl(const std::string &packageUrl);
+	int getTerminationGracePeriodSeconds() const;
+	void setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds);
+	std::string getPhpConfig() const;
+	void setPhpConfig(const std::string &phpConfig);
+	std::string getSliceEnvs() const;
+	void setSliceEnvs(const std::string &sliceEnvs);
+	bool getEnableImageAccl() const;
+	void setEnableImageAccl(bool enableImageAccl);
+	bool getEnableGreyTagRoute() const;
+	void setEnableGreyTagRoute(bool enableGreyTagRoute);
+	std::string getReplicas() const;
+	void setReplicas(const std::string &replicas);
+	std::string getCommand() const;
+	void setCommand(const std::string &command);
+	std::string getMountDesc() const;
+	void setMountDesc(const std::string &mountDesc);
+	std::string getJdk() const;
+	void setJdk(const std::string &jdk);
+	int getMinReadyInstances() const;
+	void setMinReadyInstances(int minReadyInstances);
+	std::string getAcrInstanceId() const;
+	void setAcrInstanceId(const std::string &acrInstanceId);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getImageUrl() const;
+	void setImageUrl(const std::string &imageUrl);
+	std::string getPhp() const;
+	void setPhp(const std::string &php);
+	std::string getRefAppId() const;
+	void setRefAppId(const std::string &refAppId);
+	std::string getPythonModules() const;
+	void setPythonModules(const std::string &pythonModules);
+	std::string getPhpConfigLocation() const;
+	void setPhpConfigLocation(const std::string &phpConfigLocation);
+
+private:
+	std::string nasId_;
+	std::string jarStartArgs_;
+	std::string concurrencyPolicy_;
+	std::string triggerConfig_;
+	std::string ossAkSecret_;
+	std::string mountHost_;
+	int batchWaitTime_;
+	std::string envs_;
+	std::string phpPECLExtensions_;
+	std::string phpArmsConfigLocation_;
+	std::string programmingLanguage_;
+	std::string customHostAlias_;
+	std::string jarStartOptions_;
+	bool slice_;
+	std::string configMapMountDesc_;
+	std::string ossMountDescs_;
+	std::string imagePullSecrets_;
+	std::string preStop_;
+	std::string python_;
+	long backoffLimit_;
+	std::string updateStrategy_;
+	std::string changeOrderDesc_;
+	bool autoEnableApplicationScalingRule_;
+	std::string postStart_;
+	std::string phpExtensions_;
+	bool associateEip_;
+	std::string webContainer_;
+	std::string enableAhas_;
+	std::string slsConfigs_;
+	std::string commandArgs_;
+	std::string acrAssumeRoleArn_;
+	std::string readiness_;
+	std::string timezone_;
+	std::string ossAkId_;
+	std::string liveness_;
+	std::string packageVersion_;
+	std::string tomcatConfig_;
+	long timeout_;
+	std::string warStartOptions_;
+	std::string packageRuntimeCustomBuild_;
+	std::string edasContainerVersion_;
+	std::string packageUrl_;
+	int terminationGracePeriodSeconds_;
+	std::string phpConfig_;
+	std::string sliceEnvs_;
+	bool enableImageAccl_;
+	bool enableGreyTagRoute_;
+	std::string replicas_;
+	std::string command_;
+	std::string mountDesc_;
+	std::string jdk_;
+	int minReadyInstances_;
+	std::string acrInstanceId_;
+	std::string appId_;
+	std::string imageUrl_;
+	std::string php_;
+	std::string refAppId_;
+	std::string pythonModules_;
+	std::string phpConfigLocation_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_UPDATEJOBREQUEST_H_

+ 66 - 0
sae/include/alibabacloud/sae/model/UpdateJobResult.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_SAE_MODEL_UPDATEJOBRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_UPDATEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT UpdateJobResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string appId;
+					std::string changeOrderId;
+				};
+
+
+				UpdateJobResult();
+				explicit UpdateJobResult(const std::string &payload);
+				~UpdateJobResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_UPDATEJOBRESULT_H_

+ 48 - 0
sae/include/alibabacloud/sae/model/UpdateSecretRequest.h

@@ -0,0 +1,48 @@
+/*
+ * 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_SAE_MODEL_UPDATESECRETREQUEST_H_
+#define ALIBABACLOUD_SAE_MODEL_UPDATESECRETREQUEST_H_
+
+#include <alibabacloud/sae/SaeExport.h>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Sae {
+namespace Model {
+class ALIBABACLOUD_SAE_EXPORT UpdateSecretRequest : public RoaServiceRequest {
+public:
+	UpdateSecretRequest();
+	~UpdateSecretRequest();
+	std::string getNamespaceId() const;
+	void setNamespaceId(const std::string &namespaceId);
+	long getSecretId() const;
+	void setSecretId(long secretId);
+	std::string getSecretData() const;
+	void setSecretData(const std::string &secretData);
+
+private:
+	std::string namespaceId_;
+	long secretId_;
+	std::string secretData_;
+};
+} // namespace Model
+} // namespace Sae
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_SAE_MODEL_UPDATESECRETREQUEST_H_

+ 65 - 0
sae/include/alibabacloud/sae/model/UpdateSecretResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_SAE_MODEL_UPDATESECRETRESULT_H_
+#define ALIBABACLOUD_SAE_MODEL_UPDATESECRETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/sae/SaeExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Sae
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_SAE_EXPORT UpdateSecretResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string secretId;
+				};
+
+
+				UpdateSecretResult();
+				explicit UpdateSecretResult(const std::string &payload);
+				~UpdateSecretResult();
+				std::string getMessage()const;
+				std::string getTraceId()const;
+				Data getData()const;
+				std::string getErrorCode()const;
+				std::string getCode()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				std::string traceId_;
+				Data data_;
+				std::string errorCode_;
+				std::string code_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_SAE_MODEL_UPDATESECRETRESULT_H_

+ 540 - 0
sae/src/SaeClient.cc

@@ -447,6 +447,42 @@ SaeClient::CreateIngressOutcomeCallable SaeClient::createIngressCallable(const C
 	return task->get_future();
 }
 
+SaeClient::CreateJobOutcome SaeClient::createJob(const CreateJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateJobOutcome(CreateJobResult(outcome.result()));
+	else
+		return CreateJobOutcome(outcome.error());
+}
+
+void SaeClient::createJobAsync(const CreateJobRequest& request, const CreateJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::CreateJobOutcomeCallable SaeClient::createJobCallable(const CreateJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateJobOutcome()>>(
+			[this, request]()
+			{
+			return this->createJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::CreateNamespaceOutcome SaeClient::createNamespace(const CreateNamespaceRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -483,6 +519,42 @@ SaeClient::CreateNamespaceOutcomeCallable SaeClient::createNamespaceCallable(con
 	return task->get_future();
 }
 
+SaeClient::CreateSecretOutcome SaeClient::createSecret(const CreateSecretRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateSecretOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateSecretOutcome(CreateSecretResult(outcome.result()));
+	else
+		return CreateSecretOutcome(outcome.error());
+}
+
+void SaeClient::createSecretAsync(const CreateSecretRequest& request, const CreateSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createSecret(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::CreateSecretOutcomeCallable SaeClient::createSecretCallable(const CreateSecretRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateSecretOutcome()>>(
+			[this, request]()
+			{
+			return this->createSecret(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DeleteApplicationOutcome SaeClient::deleteApplication(const DeleteApplicationRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -627,6 +699,42 @@ SaeClient::DeleteGreyTagRouteOutcomeCallable SaeClient::deleteGreyTagRouteCallab
 	return task->get_future();
 }
 
+SaeClient::DeleteHistoryJobOutcome SaeClient::deleteHistoryJob(const DeleteHistoryJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteHistoryJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteHistoryJobOutcome(DeleteHistoryJobResult(outcome.result()));
+	else
+		return DeleteHistoryJobOutcome(outcome.error());
+}
+
+void SaeClient::deleteHistoryJobAsync(const DeleteHistoryJobRequest& request, const DeleteHistoryJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteHistoryJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DeleteHistoryJobOutcomeCallable SaeClient::deleteHistoryJobCallable(const DeleteHistoryJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteHistoryJobOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteHistoryJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DeleteIngressOutcome SaeClient::deleteIngress(const DeleteIngressRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -663,6 +771,42 @@ SaeClient::DeleteIngressOutcomeCallable SaeClient::deleteIngressCallable(const D
 	return task->get_future();
 }
 
+SaeClient::DeleteJobOutcome SaeClient::deleteJob(const DeleteJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteJobOutcome(DeleteJobResult(outcome.result()));
+	else
+		return DeleteJobOutcome(outcome.error());
+}
+
+void SaeClient::deleteJobAsync(const DeleteJobRequest& request, const DeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DeleteJobOutcomeCallable SaeClient::deleteJobCallable(const DeleteJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteJobOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DeleteNamespaceOutcome SaeClient::deleteNamespace(const DeleteNamespaceRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -699,6 +843,42 @@ SaeClient::DeleteNamespaceOutcomeCallable SaeClient::deleteNamespaceCallable(con
 	return task->get_future();
 }
 
+SaeClient::DeleteSecretOutcome SaeClient::deleteSecret(const DeleteSecretRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteSecretOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteSecretOutcome(DeleteSecretResult(outcome.result()));
+	else
+		return DeleteSecretOutcome(outcome.error());
+}
+
+void SaeClient::deleteSecretAsync(const DeleteSecretRequest& request, const DeleteSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteSecret(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DeleteSecretOutcomeCallable SaeClient::deleteSecretCallable(const DeleteSecretRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteSecretOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteSecret(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DeployApplicationOutcome SaeClient::deployApplication(const DeployApplicationRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1383,6 +1563,114 @@ SaeClient::DescribeInstanceSpecificationsOutcomeCallable SaeClient::describeInst
 	return task->get_future();
 }
 
+SaeClient::DescribeJobOutcome SaeClient::describeJob(const DescribeJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeJobOutcome(DescribeJobResult(outcome.result()));
+	else
+		return DescribeJobOutcome(outcome.error());
+}
+
+void SaeClient::describeJobAsync(const DescribeJobRequest& request, const DescribeJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DescribeJobOutcomeCallable SaeClient::describeJobCallable(const DescribeJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeJobOutcome()>>(
+			[this, request]()
+			{
+			return this->describeJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+SaeClient::DescribeJobHistoryOutcome SaeClient::describeJobHistory(const DescribeJobHistoryRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeJobHistoryOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeJobHistoryOutcome(DescribeJobHistoryResult(outcome.result()));
+	else
+		return DescribeJobHistoryOutcome(outcome.error());
+}
+
+void SaeClient::describeJobHistoryAsync(const DescribeJobHistoryRequest& request, const DescribeJobHistoryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeJobHistory(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DescribeJobHistoryOutcomeCallable SaeClient::describeJobHistoryCallable(const DescribeJobHistoryRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeJobHistoryOutcome()>>(
+			[this, request]()
+			{
+			return this->describeJobHistory(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+SaeClient::DescribeJobStatusOutcome SaeClient::describeJobStatus(const DescribeJobStatusRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeJobStatusOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeJobStatusOutcome(DescribeJobStatusResult(outcome.result()));
+	else
+		return DescribeJobStatusOutcome(outcome.error());
+}
+
+void SaeClient::describeJobStatusAsync(const DescribeJobStatusRequest& request, const DescribeJobStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeJobStatus(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DescribeJobStatusOutcomeCallable SaeClient::describeJobStatusCallable(const DescribeJobStatusRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeJobStatusOutcome()>>(
+			[this, request]()
+			{
+			return this->describeJobStatus(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DescribeNamespaceOutcome SaeClient::describeNamespace(const DescribeNamespaceRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1599,6 +1887,42 @@ SaeClient::DescribeRegionsOutcomeCallable SaeClient::describeRegionsCallable(con
 	return task->get_future();
 }
 
+SaeClient::DescribeSecretOutcome SaeClient::describeSecret(const DescribeSecretRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeSecretOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeSecretOutcome(DescribeSecretResult(outcome.result()));
+	else
+		return DescribeSecretOutcome(outcome.error());
+}
+
+void SaeClient::describeSecretAsync(const DescribeSecretRequest& request, const DescribeSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeSecret(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::DescribeSecretOutcomeCallable SaeClient::describeSecretCallable(const DescribeSecretRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeSecretOutcome()>>(
+			[this, request]()
+			{
+			return this->describeSecret(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::DisableApplicationScalingRuleOutcome SaeClient::disableApplicationScalingRule(const DisableApplicationScalingRuleRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1671,6 +1995,42 @@ SaeClient::EnableApplicationScalingRuleOutcomeCallable SaeClient::enableApplicat
 	return task->get_future();
 }
 
+SaeClient::ExecJobOutcome SaeClient::execJob(const ExecJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ExecJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ExecJobOutcome(ExecJobResult(outcome.result()));
+	else
+		return ExecJobOutcome(outcome.error());
+}
+
+void SaeClient::execJobAsync(const ExecJobRequest& request, const ExecJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, execJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::ExecJobOutcomeCallable SaeClient::execJobCallable(const ExecJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ExecJobOutcome()>>(
+			[this, request]()
+			{
+			return this->execJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::ListAppEventsOutcome SaeClient::listAppEvents(const ListAppEventsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1959,6 +2319,42 @@ SaeClient::ListIngressesOutcomeCallable SaeClient::listIngressesCallable(const L
 	return task->get_future();
 }
 
+SaeClient::ListJobsOutcome SaeClient::listJobs(const ListJobsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListJobsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListJobsOutcome(ListJobsResult(outcome.result()));
+	else
+		return ListJobsOutcome(outcome.error());
+}
+
+void SaeClient::listJobsAsync(const ListJobsRequest& request, const ListJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listJobs(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::ListJobsOutcomeCallable SaeClient::listJobsCallable(const ListJobsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListJobsOutcome()>>(
+			[this, request]()
+			{
+			return this->listJobs(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::ListLogConfigsOutcome SaeClient::listLogConfigs(const ListLogConfigsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2103,6 +2499,42 @@ SaeClient::ListPublishedServicesOutcomeCallable SaeClient::listPublishedServices
 	return task->get_future();
 }
 
+SaeClient::ListSecretsOutcome SaeClient::listSecrets(const ListSecretsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListSecretsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListSecretsOutcome(ListSecretsResult(outcome.result()));
+	else
+		return ListSecretsOutcome(outcome.error());
+}
+
+void SaeClient::listSecretsAsync(const ListSecretsRequest& request, const ListSecretsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listSecrets(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::ListSecretsOutcomeCallable SaeClient::listSecretsCallable(const ListSecretsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListSecretsOutcome()>>(
+			[this, request]()
+			{
+			return this->listSecrets(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::ListTagResourcesOutcome SaeClient::listTagResources(const ListTagResourcesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2499,6 +2931,42 @@ SaeClient::StopApplicationOutcomeCallable SaeClient::stopApplicationCallable(con
 	return task->get_future();
 }
 
+SaeClient::SuspendJobOutcome SaeClient::suspendJob(const SuspendJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SuspendJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SuspendJobOutcome(SuspendJobResult(outcome.result()));
+	else
+		return SuspendJobOutcome(outcome.error());
+}
+
+void SaeClient::suspendJobAsync(const SuspendJobRequest& request, const SuspendJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, suspendJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::SuspendJobOutcomeCallable SaeClient::suspendJobCallable(const SuspendJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SuspendJobOutcome()>>(
+			[this, request]()
+			{
+			return this->suspendJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::TagResourcesOutcome SaeClient::tagResources(const TagResourcesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2859,6 +3327,42 @@ SaeClient::UpdateIngressOutcomeCallable SaeClient::updateIngressCallable(const U
 	return task->get_future();
 }
 
+SaeClient::UpdateJobOutcome SaeClient::updateJob(const UpdateJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateJobOutcome(UpdateJobResult(outcome.result()));
+	else
+		return UpdateJobOutcome(outcome.error());
+}
+
+void SaeClient::updateJobAsync(const UpdateJobRequest& request, const UpdateJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::UpdateJobOutcomeCallable SaeClient::updateJobCallable(const UpdateJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateJobOutcome()>>(
+			[this, request]()
+			{
+			return this->updateJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 SaeClient::UpdateNamespaceOutcome SaeClient::updateNamespace(const UpdateNamespaceRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2931,3 +3435,39 @@ SaeClient::UpdateNamespaceVpcOutcomeCallable SaeClient::updateNamespaceVpcCallab
 	return task->get_future();
 }
 
+SaeClient::UpdateSecretOutcome SaeClient::updateSecret(const UpdateSecretRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateSecretOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateSecretOutcome(UpdateSecretResult(outcome.result()));
+	else
+		return UpdateSecretOutcome(outcome.error());
+}
+
+void SaeClient::updateSecretAsync(const UpdateSecretRequest& request, const UpdateSecretAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateSecret(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+SaeClient::UpdateSecretOutcomeCallable SaeClient::updateSecretCallable(const UpdateSecretRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateSecretOutcome()>>(
+			[this, request]()
+			{
+			return this->updateSecret(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 68 - 32
sae/src/model/CreateApplicationRequest.cc

@@ -53,6 +53,15 @@ void CreateApplicationRequest::setOssAkSecret(const std::string &ossAkSecret) {
   setBodyParameter(std::string("OssAkSecret"), ossAkSecret);
 }
 
+std::string CreateApplicationRequest::getNasConfigs() const {
+  return nasConfigs_;
+}
+
+void CreateApplicationRequest::setNasConfigs(const std::string &nasConfigs) {
+  nasConfigs_ = nasConfigs;
+  setParameter(std::string("NasConfigs"), nasConfigs);
+}
+
 std::string CreateApplicationRequest::getMountHost() const {
   return mountHost_;
 }
@@ -80,15 +89,6 @@ void CreateApplicationRequest::setEnvs(const std::string &envs) {
   setParameter(std::string("Envs"), envs);
 }
 
-std::string CreateApplicationRequest::getKafkaInstanceId() const {
-  return kafkaInstanceId_;
-}
-
-void CreateApplicationRequest::setKafkaInstanceId(const std::string &kafkaInstanceId) {
-  kafkaInstanceId_ = kafkaInstanceId;
-  setParameter(std::string("KafkaInstanceId"), kafkaInstanceId);
-}
-
 std::string CreateApplicationRequest::getPhpPECLExtensions() const {
   return phpPECLExtensions_;
 }
@@ -170,6 +170,15 @@ void CreateApplicationRequest::setPurchaseEip(bool purchaseEip) {
   setParameter(std::string("PurchaseEip"), purchaseEip ? "true" : "false");
 }
 
+std::string CreateApplicationRequest::getPvtzDiscoverySvc() const {
+  return pvtzDiscoverySvc_;
+}
+
+void CreateApplicationRequest::setPvtzDiscoverySvc(const std::string &pvtzDiscoverySvc) {
+  pvtzDiscoverySvc_ = pvtzDiscoverySvc;
+  setParameter(std::string("PvtzDiscoverySvc"), pvtzDiscoverySvc);
+}
+
 std::string CreateApplicationRequest::getConfigMapMountDesc() const {
   return configMapMountDesc_;
 }
@@ -188,13 +197,13 @@ void CreateApplicationRequest::setOssMountDescs(const std::string &ossMountDescs
   setBodyParameter(std::string("OssMountDescs"), ossMountDescs);
 }
 
-std::string CreateApplicationRequest::getKafkaEndpoint() const {
-  return kafkaEndpoint_;
+std::string CreateApplicationRequest::getImagePullSecrets() const {
+  return imagePullSecrets_;
 }
 
-void CreateApplicationRequest::setKafkaEndpoint(const std::string &kafkaEndpoint) {
-  kafkaEndpoint_ = kafkaEndpoint;
-  setParameter(std::string("KafkaEndpoint"), kafkaEndpoint);
+void CreateApplicationRequest::setImagePullSecrets(const std::string &imagePullSecrets) {
+  imagePullSecrets_ = imagePullSecrets;
+  setParameter(std::string("ImagePullSecrets"), imagePullSecrets);
 }
 
 std::string CreateApplicationRequest::getPreStop() const {
@@ -206,6 +215,15 @@ void CreateApplicationRequest::setPreStop(const std::string &preStop) {
   setParameter(std::string("PreStop"), preStop);
 }
 
+std::string CreateApplicationRequest::getPython() const {
+  return python_;
+}
+
+void CreateApplicationRequest::setPython(const std::string &python) {
+  python_ = python;
+  setParameter(std::string("Python"), python);
+}
+
 int CreateApplicationRequest::getCpu() const {
   return cpu_;
 }
@@ -296,15 +314,6 @@ void CreateApplicationRequest::setKafkaConfigs(const std::string &kafkaConfigs)
   setParameter(std::string("KafkaConfigs"), kafkaConfigs);
 }
 
-bool CreateApplicationRequest::getOpenCollectToKafka() const {
-  return openCollectToKafka_;
-}
-
-void CreateApplicationRequest::setOpenCollectToKafka(bool openCollectToKafka) {
-  openCollectToKafka_ = openCollectToKafka;
-  setParameter(std::string("OpenCollectToKafka"), openCollectToKafka ? "true" : "false");
-}
-
 std::string CreateApplicationRequest::getCommandArgs() const {
   return commandArgs_;
 }
@@ -395,6 +404,15 @@ void CreateApplicationRequest::setWarStartOptions(const std::string &warStartOpt
   setParameter(std::string("WarStartOptions"), warStartOptions);
 }
 
+std::string CreateApplicationRequest::getPackageRuntimeCustomBuild() const {
+  return packageRuntimeCustomBuild_;
+}
+
+void CreateApplicationRequest::setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild) {
+  packageRuntimeCustomBuild_ = packageRuntimeCustomBuild;
+  setBodyParameter(std::string("PackageRuntimeCustomBuild"), packageRuntimeCustomBuild);
+}
+
 std::string CreateApplicationRequest::getEdasContainerVersion() const {
   return edasContainerVersion_;
 }
@@ -431,6 +449,24 @@ void CreateApplicationRequest::setPhpConfig(const std::string &phpConfig) {
   setBodyParameter(std::string("PhpConfig"), phpConfig);
 }
 
+bool CreateApplicationRequest::getEnableImageAccl() const {
+  return enableImageAccl_;
+}
+
+void CreateApplicationRequest::setEnableImageAccl(bool enableImageAccl) {
+  enableImageAccl_ = enableImageAccl;
+  setBodyParameter(std::string("EnableImageAccl"), enableImageAccl ? "true" : "false");
+}
+
+std::string CreateApplicationRequest::getMicroRegistration() const {
+  return microRegistration_;
+}
+
+void CreateApplicationRequest::setMicroRegistration(const std::string &microRegistration) {
+  microRegistration_ = microRegistration;
+  setParameter(std::string("MicroRegistration"), microRegistration);
+}
+
 int CreateApplicationRequest::getReplicas() const {
   return replicas_;
 }
@@ -476,15 +512,6 @@ void CreateApplicationRequest::setAppDescription(const std::string &appDescripti
   setParameter(std::string("AppDescription"), appDescription);
 }
 
-std::string CreateApplicationRequest::getKafkaLogfileConfig() const {
-  return kafkaLogfileConfig_;
-}
-
-void CreateApplicationRequest::setKafkaLogfileConfig(const std::string &kafkaLogfileConfig) {
-  kafkaLogfileConfig_ = kafkaLogfileConfig;
-  setParameter(std::string("KafkaLogfileConfig"), kafkaLogfileConfig);
-}
-
 std::string CreateApplicationRequest::getAcrInstanceId() const {
   return acrInstanceId_;
 }
@@ -521,6 +548,15 @@ void CreateApplicationRequest::setPhp(const std::string &php) {
   setBodyParameter(std::string("Php"), php);
 }
 
+std::string CreateApplicationRequest::getPythonModules() const {
+  return pythonModules_;
+}
+
+void CreateApplicationRequest::setPythonModules(const std::string &pythonModules) {
+  pythonModules_ = pythonModules;
+  setParameter(std::string("PythonModules"), pythonModules);
+}
+
 std::string CreateApplicationRequest::getPhpConfigLocation() const {
   return phpConfigLocation_;
 }

+ 9 - 0
sae/src/model/CreateIngressRequest.cc

@@ -89,6 +89,15 @@ void CreateIngressRequest::setCertId(const std::string &certId) {
   setParameter(std::string("CertId"), certId);
 }
 
+std::string CreateIngressRequest::getCertIds() const {
+  return certIds_;
+}
+
+void CreateIngressRequest::setCertIds(const std::string &certIds) {
+  certIds_ = certIds;
+  setParameter(std::string("CertIds"), certIds);
+}
+
 std::string CreateIngressRequest::getListenerProtocol() const {
   return listenerProtocol_;
 }

+ 595 - 0
sae/src/model/CreateJobRequest.cc

@@ -0,0 +1,595 @@
+/*
+ * 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/sae/model/CreateJobRequest.h>
+
+using AlibabaCloud::Sae::Model::CreateJobRequest;
+
+CreateJobRequest::CreateJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/createJob"};
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateJobRequest::~CreateJobRequest() {}
+
+std::string CreateJobRequest::getNasId() const {
+  return nasId_;
+}
+
+void CreateJobRequest::setNasId(const std::string &nasId) {
+  nasId_ = nasId;
+  setParameter(std::string("NasId"), nasId);
+}
+
+std::string CreateJobRequest::getJarStartArgs() const {
+  return jarStartArgs_;
+}
+
+void CreateJobRequest::setJarStartArgs(const std::string &jarStartArgs) {
+  jarStartArgs_ = jarStartArgs;
+  setParameter(std::string("JarStartArgs"), jarStartArgs);
+}
+
+std::string CreateJobRequest::getConcurrencyPolicy() const {
+  return concurrencyPolicy_;
+}
+
+void CreateJobRequest::setConcurrencyPolicy(const std::string &concurrencyPolicy) {
+  concurrencyPolicy_ = concurrencyPolicy;
+  setParameter(std::string("ConcurrencyPolicy"), concurrencyPolicy);
+}
+
+std::string CreateJobRequest::getTriggerConfig() const {
+  return triggerConfig_;
+}
+
+void CreateJobRequest::setTriggerConfig(const std::string &triggerConfig) {
+  triggerConfig_ = triggerConfig;
+  setParameter(std::string("TriggerConfig"), triggerConfig);
+}
+
+std::string CreateJobRequest::getOssAkSecret() const {
+  return ossAkSecret_;
+}
+
+void CreateJobRequest::setOssAkSecret(const std::string &ossAkSecret) {
+  ossAkSecret_ = ossAkSecret;
+  setBodyParameter(std::string("OssAkSecret"), ossAkSecret);
+}
+
+std::string CreateJobRequest::getMountHost() const {
+  return mountHost_;
+}
+
+void CreateJobRequest::setMountHost(const std::string &mountHost) {
+  mountHost_ = mountHost;
+  setParameter(std::string("MountHost"), mountHost);
+}
+
+bool CreateJobRequest::getAutoConfig() const {
+  return autoConfig_;
+}
+
+void CreateJobRequest::setAutoConfig(bool autoConfig) {
+  autoConfig_ = autoConfig;
+  setParameter(std::string("AutoConfig"), autoConfig ? "true" : "false");
+}
+
+std::string CreateJobRequest::getEnvs() const {
+  return envs_;
+}
+
+void CreateJobRequest::setEnvs(const std::string &envs) {
+  envs_ = envs;
+  setParameter(std::string("Envs"), envs);
+}
+
+std::string CreateJobRequest::getPhpPECLExtensions() const {
+  return phpPECLExtensions_;
+}
+
+void CreateJobRequest::setPhpPECLExtensions(const std::string &phpPECLExtensions) {
+  phpPECLExtensions_ = phpPECLExtensions;
+  setBodyParameter(std::string("PhpPECLExtensions"), phpPECLExtensions);
+}
+
+std::string CreateJobRequest::getPhpArmsConfigLocation() const {
+  return phpArmsConfigLocation_;
+}
+
+void CreateJobRequest::setPhpArmsConfigLocation(const std::string &phpArmsConfigLocation) {
+  phpArmsConfigLocation_ = phpArmsConfigLocation;
+  setParameter(std::string("PhpArmsConfigLocation"), phpArmsConfigLocation);
+}
+
+std::string CreateJobRequest::getProgrammingLanguage() const {
+  return programmingLanguage_;
+}
+
+void CreateJobRequest::setProgrammingLanguage(const std::string &programmingLanguage) {
+  programmingLanguage_ = programmingLanguage;
+  setParameter(std::string("ProgrammingLanguage"), programmingLanguage);
+}
+
+std::string CreateJobRequest::getCustomHostAlias() const {
+  return customHostAlias_;
+}
+
+void CreateJobRequest::setCustomHostAlias(const std::string &customHostAlias) {
+  customHostAlias_ = customHostAlias;
+  setParameter(std::string("CustomHostAlias"), customHostAlias);
+}
+
+bool CreateJobRequest::getDeploy() const {
+  return deploy_;
+}
+
+void CreateJobRequest::setDeploy(bool deploy) {
+  deploy_ = deploy;
+  setParameter(std::string("Deploy"), deploy ? "true" : "false");
+}
+
+std::string CreateJobRequest::getJarStartOptions() const {
+  return jarStartOptions_;
+}
+
+void CreateJobRequest::setJarStartOptions(const std::string &jarStartOptions) {
+  jarStartOptions_ = jarStartOptions;
+  setParameter(std::string("JarStartOptions"), jarStartOptions);
+}
+
+std::string CreateJobRequest::getAppName() const {
+  return appName_;
+}
+
+void CreateJobRequest::setAppName(const std::string &appName) {
+  appName_ = appName;
+  setParameter(std::string("AppName"), appName);
+}
+
+std::string CreateJobRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void CreateJobRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+bool CreateJobRequest::getSlice() const {
+  return slice_;
+}
+
+void CreateJobRequest::setSlice(bool slice) {
+  slice_ = slice;
+  setParameter(std::string("Slice"), slice ? "true" : "false");
+}
+
+std::string CreateJobRequest::getConfigMapMountDesc() const {
+  return configMapMountDesc_;
+}
+
+void CreateJobRequest::setConfigMapMountDesc(const std::string &configMapMountDesc) {
+  configMapMountDesc_ = configMapMountDesc;
+  setBodyParameter(std::string("ConfigMapMountDesc"), configMapMountDesc);
+}
+
+std::string CreateJobRequest::getOssMountDescs() const {
+  return ossMountDescs_;
+}
+
+void CreateJobRequest::setOssMountDescs(const std::string &ossMountDescs) {
+  ossMountDescs_ = ossMountDescs;
+  setBodyParameter(std::string("OssMountDescs"), ossMountDescs);
+}
+
+std::string CreateJobRequest::getImagePullSecrets() const {
+  return imagePullSecrets_;
+}
+
+void CreateJobRequest::setImagePullSecrets(const std::string &imagePullSecrets) {
+  imagePullSecrets_ = imagePullSecrets;
+  setParameter(std::string("ImagePullSecrets"), imagePullSecrets);
+}
+
+std::string CreateJobRequest::getPreStop() const {
+  return preStop_;
+}
+
+void CreateJobRequest::setPreStop(const std::string &preStop) {
+  preStop_ = preStop;
+  setParameter(std::string("PreStop"), preStop);
+}
+
+std::string CreateJobRequest::getPython() const {
+  return python_;
+}
+
+void CreateJobRequest::setPython(const std::string &python) {
+  python_ = python;
+  setParameter(std::string("Python"), python);
+}
+
+int CreateJobRequest::getCpu() const {
+  return cpu_;
+}
+
+void CreateJobRequest::setCpu(int cpu) {
+  cpu_ = cpu;
+  setParameter(std::string("Cpu"), std::to_string(cpu));
+}
+
+long CreateJobRequest::getBackoffLimit() const {
+  return backoffLimit_;
+}
+
+void CreateJobRequest::setBackoffLimit(long backoffLimit) {
+  backoffLimit_ = backoffLimit;
+  setParameter(std::string("BackoffLimit"), std::to_string(backoffLimit));
+}
+
+std::string CreateJobRequest::getVSwitchId() const {
+  return vSwitchId_;
+}
+
+void CreateJobRequest::setVSwitchId(const std::string &vSwitchId) {
+  vSwitchId_ = vSwitchId;
+  setParameter(std::string("VSwitchId"), vSwitchId);
+}
+
+std::string CreateJobRequest::getPackageType() const {
+  return packageType_;
+}
+
+void CreateJobRequest::setPackageType(const std::string &packageType) {
+  packageType_ = packageType;
+  setParameter(std::string("PackageType"), packageType);
+}
+
+std::string CreateJobRequest::getPostStart() const {
+  return postStart_;
+}
+
+void CreateJobRequest::setPostStart(const std::string &postStart) {
+  postStart_ = postStart;
+  setParameter(std::string("PostStart"), postStart);
+}
+
+std::string CreateJobRequest::getPhpExtensions() const {
+  return phpExtensions_;
+}
+
+void CreateJobRequest::setPhpExtensions(const std::string &phpExtensions) {
+  phpExtensions_ = phpExtensions;
+  setBodyParameter(std::string("PhpExtensions"), phpExtensions);
+}
+
+bool CreateJobRequest::getAssociateEip() const {
+  return associateEip_;
+}
+
+void CreateJobRequest::setAssociateEip(bool associateEip) {
+  associateEip_ = associateEip;
+  setBodyParameter(std::string("AssociateEip"), associateEip ? "true" : "false");
+}
+
+std::string CreateJobRequest::getWebContainer() const {
+  return webContainer_;
+}
+
+void CreateJobRequest::setWebContainer(const std::string &webContainer) {
+  webContainer_ = webContainer;
+  setParameter(std::string("WebContainer"), webContainer);
+}
+
+int CreateJobRequest::getMemory() const {
+  return memory_;
+}
+
+void CreateJobRequest::setMemory(int memory) {
+  memory_ = memory;
+  setParameter(std::string("Memory"), std::to_string(memory));
+}
+
+std::string CreateJobRequest::getSlsConfigs() const {
+  return slsConfigs_;
+}
+
+void CreateJobRequest::setSlsConfigs(const std::string &slsConfigs) {
+  slsConfigs_ = slsConfigs;
+  setParameter(std::string("SlsConfigs"), slsConfigs);
+}
+
+std::string CreateJobRequest::getCommandArgs() const {
+  return commandArgs_;
+}
+
+void CreateJobRequest::setCommandArgs(const std::string &commandArgs) {
+  commandArgs_ = commandArgs;
+  setParameter(std::string("CommandArgs"), commandArgs);
+}
+
+std::string CreateJobRequest::getAcrAssumeRoleArn() const {
+  return acrAssumeRoleArn_;
+}
+
+void CreateJobRequest::setAcrAssumeRoleArn(const std::string &acrAssumeRoleArn) {
+  acrAssumeRoleArn_ = acrAssumeRoleArn;
+  setParameter(std::string("AcrAssumeRoleArn"), acrAssumeRoleArn);
+}
+
+std::string CreateJobRequest::getReadiness() const {
+  return readiness_;
+}
+
+void CreateJobRequest::setReadiness(const std::string &readiness) {
+  readiness_ = readiness;
+  setParameter(std::string("Readiness"), readiness);
+}
+
+std::string CreateJobRequest::getTimezone() const {
+  return timezone_;
+}
+
+void CreateJobRequest::setTimezone(const std::string &timezone) {
+  timezone_ = timezone;
+  setParameter(std::string("Timezone"), timezone);
+}
+
+std::string CreateJobRequest::getOssAkId() const {
+  return ossAkId_;
+}
+
+void CreateJobRequest::setOssAkId(const std::string &ossAkId) {
+  ossAkId_ = ossAkId;
+  setBodyParameter(std::string("OssAkId"), ossAkId);
+}
+
+std::string CreateJobRequest::getLiveness() const {
+  return liveness_;
+}
+
+void CreateJobRequest::setLiveness(const std::string &liveness) {
+  liveness_ = liveness;
+  setParameter(std::string("Liveness"), liveness);
+}
+
+std::string CreateJobRequest::getSecurityGroupId() const {
+  return securityGroupId_;
+}
+
+void CreateJobRequest::setSecurityGroupId(const std::string &securityGroupId) {
+  securityGroupId_ = securityGroupId;
+  setParameter(std::string("SecurityGroupId"), securityGroupId);
+}
+
+std::string CreateJobRequest::getPackageVersion() const {
+  return packageVersion_;
+}
+
+void CreateJobRequest::setPackageVersion(const std::string &packageVersion) {
+  packageVersion_ = packageVersion;
+  setParameter(std::string("PackageVersion"), packageVersion);
+}
+
+std::string CreateJobRequest::getTomcatConfig() const {
+  return tomcatConfig_;
+}
+
+void CreateJobRequest::setTomcatConfig(const std::string &tomcatConfig) {
+  tomcatConfig_ = tomcatConfig;
+  setParameter(std::string("TomcatConfig"), tomcatConfig);
+}
+
+long CreateJobRequest::getTimeout() const {
+  return timeout_;
+}
+
+void CreateJobRequest::setTimeout(long timeout) {
+  timeout_ = timeout;
+  setParameter(std::string("Timeout"), std::to_string(timeout));
+}
+
+std::string CreateJobRequest::getWarStartOptions() const {
+  return warStartOptions_;
+}
+
+void CreateJobRequest::setWarStartOptions(const std::string &warStartOptions) {
+  warStartOptions_ = warStartOptions;
+  setParameter(std::string("WarStartOptions"), warStartOptions);
+}
+
+std::string CreateJobRequest::getPackageRuntimeCustomBuild() const {
+  return packageRuntimeCustomBuild_;
+}
+
+void CreateJobRequest::setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild) {
+  packageRuntimeCustomBuild_ = packageRuntimeCustomBuild;
+  setBodyParameter(std::string("PackageRuntimeCustomBuild"), packageRuntimeCustomBuild);
+}
+
+std::string CreateJobRequest::getEdasContainerVersion() const {
+  return edasContainerVersion_;
+}
+
+void CreateJobRequest::setEdasContainerVersion(const std::string &edasContainerVersion) {
+  edasContainerVersion_ = edasContainerVersion;
+  setParameter(std::string("EdasContainerVersion"), edasContainerVersion);
+}
+
+std::string CreateJobRequest::getPackageUrl() const {
+  return packageUrl_;
+}
+
+void CreateJobRequest::setPackageUrl(const std::string &packageUrl) {
+  packageUrl_ = packageUrl;
+  setParameter(std::string("PackageUrl"), packageUrl);
+}
+
+int CreateJobRequest::getTerminationGracePeriodSeconds() const {
+  return terminationGracePeriodSeconds_;
+}
+
+void CreateJobRequest::setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds) {
+  terminationGracePeriodSeconds_ = terminationGracePeriodSeconds;
+  setParameter(std::string("TerminationGracePeriodSeconds"), std::to_string(terminationGracePeriodSeconds));
+}
+
+std::string CreateJobRequest::getPhpConfig() const {
+  return phpConfig_;
+}
+
+void CreateJobRequest::setPhpConfig(const std::string &phpConfig) {
+  phpConfig_ = phpConfig;
+  setBodyParameter(std::string("PhpConfig"), phpConfig);
+}
+
+std::string CreateJobRequest::getSliceEnvs() const {
+  return sliceEnvs_;
+}
+
+void CreateJobRequest::setSliceEnvs(const std::string &sliceEnvs) {
+  sliceEnvs_ = sliceEnvs;
+  setParameter(std::string("SliceEnvs"), sliceEnvs);
+}
+
+bool CreateJobRequest::getEnableImageAccl() const {
+  return enableImageAccl_;
+}
+
+void CreateJobRequest::setEnableImageAccl(bool enableImageAccl) {
+  enableImageAccl_ = enableImageAccl;
+  setBodyParameter(std::string("EnableImageAccl"), enableImageAccl ? "true" : "false");
+}
+
+int CreateJobRequest::getReplicas() const {
+  return replicas_;
+}
+
+void CreateJobRequest::setReplicas(int replicas) {
+  replicas_ = replicas;
+  setParameter(std::string("Replicas"), std::to_string(replicas));
+}
+
+std::string CreateJobRequest::getWorkload() const {
+  return workload_;
+}
+
+void CreateJobRequest::setWorkload(const std::string &workload) {
+  workload_ = workload;
+  setParameter(std::string("Workload"), workload);
+}
+
+std::string CreateJobRequest::getCommand() const {
+  return command_;
+}
+
+void CreateJobRequest::setCommand(const std::string &command) {
+  command_ = command;
+  setParameter(std::string("Command"), command);
+}
+
+std::string CreateJobRequest::getMountDesc() const {
+  return mountDesc_;
+}
+
+void CreateJobRequest::setMountDesc(const std::string &mountDesc) {
+  mountDesc_ = mountDesc;
+  setParameter(std::string("MountDesc"), mountDesc);
+}
+
+std::string CreateJobRequest::getJdk() const {
+  return jdk_;
+}
+
+void CreateJobRequest::setJdk(const std::string &jdk) {
+  jdk_ = jdk;
+  setParameter(std::string("Jdk"), jdk);
+}
+
+std::string CreateJobRequest::getAppDescription() const {
+  return appDescription_;
+}
+
+void CreateJobRequest::setAppDescription(const std::string &appDescription) {
+  appDescription_ = appDescription;
+  setParameter(std::string("AppDescription"), appDescription);
+}
+
+std::string CreateJobRequest::getAcrInstanceId() const {
+  return acrInstanceId_;
+}
+
+void CreateJobRequest::setAcrInstanceId(const std::string &acrInstanceId) {
+  acrInstanceId_ = acrInstanceId;
+  setBodyParameter(std::string("AcrInstanceId"), acrInstanceId);
+}
+
+std::string CreateJobRequest::getVpcId() const {
+  return vpcId_;
+}
+
+void CreateJobRequest::setVpcId(const std::string &vpcId) {
+  vpcId_ = vpcId;
+  setParameter(std::string("VpcId"), vpcId);
+}
+
+std::string CreateJobRequest::getImageUrl() const {
+  return imageUrl_;
+}
+
+void CreateJobRequest::setImageUrl(const std::string &imageUrl) {
+  imageUrl_ = imageUrl;
+  setParameter(std::string("ImageUrl"), imageUrl);
+}
+
+std::string CreateJobRequest::getPhp() const {
+  return php_;
+}
+
+void CreateJobRequest::setPhp(const std::string &php) {
+  php_ = php;
+  setBodyParameter(std::string("Php"), php);
+}
+
+std::string CreateJobRequest::getRefAppId() const {
+  return refAppId_;
+}
+
+void CreateJobRequest::setRefAppId(const std::string &refAppId) {
+  refAppId_ = refAppId;
+  setParameter(std::string("RefAppId"), refAppId);
+}
+
+std::string CreateJobRequest::getPythonModules() const {
+  return pythonModules_;
+}
+
+void CreateJobRequest::setPythonModules(const std::string &pythonModules) {
+  pythonModules_ = pythonModules;
+  setParameter(std::string("PythonModules"), pythonModules);
+}
+
+std::string CreateJobRequest::getPhpConfigLocation() const {
+  return phpConfigLocation_;
+}
+
+void CreateJobRequest::setPhpConfigLocation(const std::string &phpConfigLocation) {
+  phpConfigLocation_ = phpConfigLocation;
+  setParameter(std::string("PhpConfigLocation"), phpConfigLocation);
+}
+

+ 89 - 0
sae/src/model/CreateJobResult.cc

@@ -0,0 +1,89 @@
+/*
+ * 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/sae/model/CreateJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+CreateJobResult::CreateJobResult() :
+	ServiceResult()
+{}
+
+CreateJobResult::CreateJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateJobResult::~CreateJobResult()
+{}
+
+void CreateJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["ChangeOrderId"].isNull())
+		data_.changeOrderId = dataNode["ChangeOrderId"].asString();
+	if(!dataNode["AppId"].isNull())
+		data_.appId = dataNode["AppId"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string CreateJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string CreateJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+CreateJobResult::Data CreateJobResult::getData()const
+{
+	return data_;
+}
+
+std::string CreateJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string CreateJobResult::getCode()const
+{
+	return code_;
+}
+
+bool CreateJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 64 - 0
sae/src/model/CreateSecretRequest.cc

@@ -0,0 +1,64 @@
+/*
+ * 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/sae/model/CreateSecretRequest.h>
+
+using AlibabaCloud::Sae::Model::CreateSecretRequest;
+
+CreateSecretRequest::CreateSecretRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/secret/secret"};
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateSecretRequest::~CreateSecretRequest() {}
+
+std::string CreateSecretRequest::getSecretType() const {
+  return secretType_;
+}
+
+void CreateSecretRequest::setSecretType(const std::string &secretType) {
+  secretType_ = secretType;
+  setParameter(std::string("SecretType"), secretType);
+}
+
+std::string CreateSecretRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void CreateSecretRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+std::string CreateSecretRequest::getSecretData() const {
+  return secretData_;
+}
+
+void CreateSecretRequest::setSecretData(const std::string &secretData) {
+  secretData_ = secretData;
+  setBodyParameter(std::string("SecretData"), secretData);
+}
+
+std::string CreateSecretRequest::getSecretName() const {
+  return secretName_;
+}
+
+void CreateSecretRequest::setSecretName(const std::string &secretName) {
+  secretName_ = secretName;
+  setParameter(std::string("SecretName"), secretName);
+}
+

+ 87 - 0
sae/src/model/CreateSecretResult.cc

@@ -0,0 +1,87 @@
+/*
+ * 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/sae/model/CreateSecretResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+CreateSecretResult::CreateSecretResult() :
+	ServiceResult()
+{}
+
+CreateSecretResult::CreateSecretResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateSecretResult::~CreateSecretResult()
+{}
+
+void CreateSecretResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["SecretId"].isNull())
+		data_.secretId = std::stol(dataNode["SecretId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string CreateSecretResult::getMessage()const
+{
+	return message_;
+}
+
+std::string CreateSecretResult::getTraceId()const
+{
+	return traceId_;
+}
+
+CreateSecretResult::Data CreateSecretResult::getData()const
+{
+	return data_;
+}
+
+std::string CreateSecretResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string CreateSecretResult::getCode()const
+{
+	return code_;
+}
+
+bool CreateSecretResult::getSuccess()const
+{
+	return success_;
+}
+

+ 46 - 0
sae/src/model/DeleteHistoryJobRequest.cc

@@ -0,0 +1,46 @@
+/*
+ * 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/sae/model/DeleteHistoryJobRequest.h>
+
+using AlibabaCloud::Sae::Model::DeleteHistoryJobRequest;
+
+DeleteHistoryJobRequest::DeleteHistoryJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/deleteHistoryJob"};
+  setMethod(HttpRequest::Method::Delete);
+}
+
+DeleteHistoryJobRequest::~DeleteHistoryJobRequest() {}
+
+std::string DeleteHistoryJobRequest::getJobId() const {
+  return jobId_;
+}
+
+void DeleteHistoryJobRequest::setJobId(const std::string &jobId) {
+  jobId_ = jobId;
+  setParameter(std::string("JobId"), jobId);
+}
+
+std::string DeleteHistoryJobRequest::getAppId() const {
+  return appId_;
+}
+
+void DeleteHistoryJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 86 - 0
sae/src/model/DeleteHistoryJobResult.cc

@@ -0,0 +1,86 @@
+/*
+ * 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/sae/model/DeleteHistoryJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DeleteHistoryJobResult::DeleteHistoryJobResult() :
+	ServiceResult()
+{}
+
+DeleteHistoryJobResult::DeleteHistoryJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteHistoryJobResult::~DeleteHistoryJobResult()
+{}
+
+void DeleteHistoryJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["Data"].isNull())
+		data_ = value["Data"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DeleteHistoryJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DeleteHistoryJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+std::string DeleteHistoryJobResult::getData()const
+{
+	return data_;
+}
+
+std::string DeleteHistoryJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DeleteHistoryJobResult::getCode()const
+{
+	return code_;
+}
+
+bool DeleteHistoryJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 37 - 0
sae/src/model/DeleteJobRequest.cc

@@ -0,0 +1,37 @@
+/*
+ * 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/sae/model/DeleteJobRequest.h>
+
+using AlibabaCloud::Sae::Model::DeleteJobRequest;
+
+DeleteJobRequest::DeleteJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/deleteJob"};
+  setMethod(HttpRequest::Method::Delete);
+}
+
+DeleteJobRequest::~DeleteJobRequest() {}
+
+std::string DeleteJobRequest::getAppId() const {
+  return appId_;
+}
+
+void DeleteJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 86 - 0
sae/src/model/DeleteJobResult.cc

@@ -0,0 +1,86 @@
+/*
+ * 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/sae/model/DeleteJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DeleteJobResult::DeleteJobResult() :
+	ServiceResult()
+{}
+
+DeleteJobResult::DeleteJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteJobResult::~DeleteJobResult()
+{}
+
+void DeleteJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["Data"].isNull())
+		data_ = value["Data"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DeleteJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DeleteJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+std::string DeleteJobResult::getData()const
+{
+	return data_;
+}
+
+std::string DeleteJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DeleteJobResult::getCode()const
+{
+	return code_;
+}
+
+bool DeleteJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 46 - 0
sae/src/model/DeleteSecretRequest.cc

@@ -0,0 +1,46 @@
+/*
+ * 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/sae/model/DeleteSecretRequest.h>
+
+using AlibabaCloud::Sae::Model::DeleteSecretRequest;
+
+DeleteSecretRequest::DeleteSecretRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/secret/secret"};
+  setMethod(HttpRequest::Method::Delete);
+}
+
+DeleteSecretRequest::~DeleteSecretRequest() {}
+
+std::string DeleteSecretRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void DeleteSecretRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+long DeleteSecretRequest::getSecretId() const {
+  return secretId_;
+}
+
+void DeleteSecretRequest::setSecretId(long secretId) {
+  secretId_ = secretId;
+  setParameter(std::string("SecretId"), std::to_string(secretId));
+}
+

+ 87 - 0
sae/src/model/DeleteSecretResult.cc

@@ -0,0 +1,87 @@
+/*
+ * 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/sae/model/DeleteSecretResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DeleteSecretResult::DeleteSecretResult() :
+	ServiceResult()
+{}
+
+DeleteSecretResult::DeleteSecretResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteSecretResult::~DeleteSecretResult()
+{}
+
+void DeleteSecretResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["SecretId"].isNull())
+		data_.secretId = std::stol(dataNode["SecretId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DeleteSecretResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DeleteSecretResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DeleteSecretResult::Data DeleteSecretResult::getData()const
+{
+	return data_;
+}
+
+std::string DeleteSecretResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DeleteSecretResult::getCode()const
+{
+	return code_;
+}
+
+bool DeleteSecretResult::getSuccess()const
+{
+	return success_;
+}
+

+ 77 - 32
sae/src/model/DeployApplicationRequest.cc

@@ -53,6 +53,15 @@ void DeployApplicationRequest::setOssAkSecret(const std::string &ossAkSecret) {
   setBodyParameter(std::string("OssAkSecret"), ossAkSecret);
 }
 
+std::string DeployApplicationRequest::getNasConfigs() const {
+  return nasConfigs_;
+}
+
+void DeployApplicationRequest::setNasConfigs(const std::string &nasConfigs) {
+  nasConfigs_ = nasConfigs;
+  setParameter(std::string("NasConfigs"), nasConfigs);
+}
+
 std::string DeployApplicationRequest::getMountHost() const {
   return mountHost_;
 }
@@ -80,15 +89,6 @@ void DeployApplicationRequest::setEnvs(const std::string &envs) {
   setParameter(std::string("Envs"), envs);
 }
 
-std::string DeployApplicationRequest::getKafkaInstanceId() const {
-  return kafkaInstanceId_;
-}
-
-void DeployApplicationRequest::setKafkaInstanceId(const std::string &kafkaInstanceId) {
-  kafkaInstanceId_ = kafkaInstanceId;
-  setParameter(std::string("KafkaInstanceId"), kafkaInstanceId);
-}
-
 std::string DeployApplicationRequest::getPhpPECLExtensions() const {
   return phpPECLExtensions_;
 }
@@ -116,6 +116,15 @@ void DeployApplicationRequest::setCustomHostAlias(const std::string &customHostA
   setParameter(std::string("CustomHostAlias"), customHostAlias);
 }
 
+std::string DeployApplicationRequest::getDeploy() const {
+  return deploy_;
+}
+
+void DeployApplicationRequest::setDeploy(const std::string &deploy) {
+  deploy_ = deploy;
+  setParameter(std::string("Deploy"), deploy);
+}
+
 std::string DeployApplicationRequest::getJarStartOptions() const {
   return jarStartOptions_;
 }
@@ -125,6 +134,15 @@ void DeployApplicationRequest::setJarStartOptions(const std::string &jarStartOpt
   setParameter(std::string("JarStartOptions"), jarStartOptions);
 }
 
+std::string DeployApplicationRequest::getPvtzDiscoverySvc() const {
+  return pvtzDiscoverySvc_;
+}
+
+void DeployApplicationRequest::setPvtzDiscoverySvc(const std::string &pvtzDiscoverySvc) {
+  pvtzDiscoverySvc_ = pvtzDiscoverySvc;
+  setParameter(std::string("PvtzDiscoverySvc"), pvtzDiscoverySvc);
+}
+
 std::string DeployApplicationRequest::getConfigMapMountDesc() const {
   return configMapMountDesc_;
 }
@@ -143,13 +161,13 @@ void DeployApplicationRequest::setOssMountDescs(const std::string &ossMountDescs
   setBodyParameter(std::string("OssMountDescs"), ossMountDescs);
 }
 
-std::string DeployApplicationRequest::getKafkaEndpoint() const {
-  return kafkaEndpoint_;
+std::string DeployApplicationRequest::getImagePullSecrets() const {
+  return imagePullSecrets_;
 }
 
-void DeployApplicationRequest::setKafkaEndpoint(const std::string &kafkaEndpoint) {
-  kafkaEndpoint_ = kafkaEndpoint;
-  setParameter(std::string("KafkaEndpoint"), kafkaEndpoint);
+void DeployApplicationRequest::setImagePullSecrets(const std::string &imagePullSecrets) {
+  imagePullSecrets_ = imagePullSecrets;
+  setParameter(std::string("ImagePullSecrets"), imagePullSecrets);
 }
 
 std::string DeployApplicationRequest::getPreStop() const {
@@ -161,6 +179,15 @@ void DeployApplicationRequest::setPreStop(const std::string &preStop) {
   setParameter(std::string("PreStop"), preStop);
 }
 
+std::string DeployApplicationRequest::getPython() const {
+  return python_;
+}
+
+void DeployApplicationRequest::setPython(const std::string &python) {
+  python_ = python;
+  setParameter(std::string("Python"), python);
+}
+
 std::string DeployApplicationRequest::getUpdateStrategy() const {
   return updateStrategy_;
 }
@@ -260,15 +287,6 @@ void DeployApplicationRequest::setKafkaConfigs(const std::string &kafkaConfigs)
   setParameter(std::string("KafkaConfigs"), kafkaConfigs);
 }
 
-bool DeployApplicationRequest::getOpenCollectToKafka() const {
-  return openCollectToKafka_;
-}
-
-void DeployApplicationRequest::setOpenCollectToKafka(bool openCollectToKafka) {
-  openCollectToKafka_ = openCollectToKafka;
-  setParameter(std::string("OpenCollectToKafka"), openCollectToKafka ? "true" : "false");
-}
-
 std::string DeployApplicationRequest::getCommandArgs() const {
   return commandArgs_;
 }
@@ -350,6 +368,15 @@ void DeployApplicationRequest::setWarStartOptions(const std::string &warStartOpt
   setParameter(std::string("WarStartOptions"), warStartOptions);
 }
 
+std::string DeployApplicationRequest::getPackageRuntimeCustomBuild() const {
+  return packageRuntimeCustomBuild_;
+}
+
+void DeployApplicationRequest::setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild) {
+  packageRuntimeCustomBuild_ = packageRuntimeCustomBuild;
+  setBodyParameter(std::string("PackageRuntimeCustomBuild"), packageRuntimeCustomBuild);
+}
+
 std::string DeployApplicationRequest::getEdasContainerVersion() const {
   return edasContainerVersion_;
 }
@@ -386,6 +413,24 @@ void DeployApplicationRequest::setPhpConfig(const std::string &phpConfig) {
   setBodyParameter(std::string("PhpConfig"), phpConfig);
 }
 
+bool DeployApplicationRequest::getEnableImageAccl() const {
+  return enableImageAccl_;
+}
+
+void DeployApplicationRequest::setEnableImageAccl(bool enableImageAccl) {
+  enableImageAccl_ = enableImageAccl;
+  setBodyParameter(std::string("EnableImageAccl"), enableImageAccl ? "true" : "false");
+}
+
+std::string DeployApplicationRequest::getMicroRegistration() const {
+  return microRegistration_;
+}
+
+void DeployApplicationRequest::setMicroRegistration(const std::string &microRegistration) {
+  microRegistration_ = microRegistration;
+  setParameter(std::string("MicroRegistration"), microRegistration);
+}
+
 bool DeployApplicationRequest::getEnableGreyTagRoute() const {
   return enableGreyTagRoute_;
 }
@@ -431,15 +476,6 @@ void DeployApplicationRequest::setMinReadyInstances(int minReadyInstances) {
   setParameter(std::string("MinReadyInstances"), std::to_string(minReadyInstances));
 }
 
-std::string DeployApplicationRequest::getKafkaLogfileConfig() const {
-  return kafkaLogfileConfig_;
-}
-
-void DeployApplicationRequest::setKafkaLogfileConfig(const std::string &kafkaLogfileConfig) {
-  kafkaLogfileConfig_ = kafkaLogfileConfig;
-  setParameter(std::string("KafkaLogfileConfig"), kafkaLogfileConfig);
-}
-
 std::string DeployApplicationRequest::getAcrInstanceId() const {
   return acrInstanceId_;
 }
@@ -476,6 +512,15 @@ void DeployApplicationRequest::setPhp(const std::string &php) {
   setBodyParameter(std::string("Php"), php);
 }
 
+std::string DeployApplicationRequest::getPythonModules() const {
+  return pythonModules_;
+}
+
+void DeployApplicationRequest::setPythonModules(const std::string &pythonModules) {
+  pythonModules_ = pythonModules;
+  setParameter(std::string("PythonModules"), pythonModules);
+}
+
 std::string DeployApplicationRequest::getPhpConfigLocation() const {
   return phpConfigLocation_;
 }

+ 16 - 0
sae/src/model/DescribeApplicationConfigResult.cc

@@ -60,6 +60,8 @@ void DescribeApplicationConfigResult::parse(const std::string &payload)
 		data_.packageUrl = dataNode["PackageUrl"].asString();
 	if(!dataNode["PackageType"].isNull())
 		data_.packageType = dataNode["PackageType"].asString();
+	if(!dataNode["PackageRuntimeCustomBuild"].isNull())
+		data_.packageRuntimeCustomBuild = dataNode["PackageRuntimeCustomBuild"].asString();
 	if(!dataNode["PreStop"].isNull())
 		data_.preStop = dataNode["PreStop"].asString();
 	if(!dataNode["PackageVersion"].isNull())
@@ -144,12 +146,26 @@ void DescribeApplicationConfigResult::parse(const std::string &payload)
 		data_.acrInstanceId = dataNode["AcrInstanceId"].asString();
 	if(!dataNode["AcrAssumeRoleArn"].isNull())
 		data_.acrAssumeRoleArn = dataNode["AcrAssumeRoleArn"].asString();
+	if(!dataNode["ImagePullSecrets"].isNull())
+		data_.imagePullSecrets = dataNode["ImagePullSecrets"].asString();
+	if(!dataNode["EnableImageAccl"].isNull())
+		data_.enableImageAccl = dataNode["EnableImageAccl"].asString() == "true";
 	if(!dataNode["AssociateEip"].isNull())
 		data_.associateEip = dataNode["AssociateEip"].asString() == "true";
 	if(!dataNode["KafkaConfigs"].isNull())
 		data_.kafkaConfigs = dataNode["KafkaConfigs"].asString();
 	if(!dataNode["ProgrammingLanguage"].isNull())
 		data_.programmingLanguage = dataNode["ProgrammingLanguage"].asString();
+	if(!dataNode["PvtzDiscovery"].isNull())
+		data_.pvtzDiscovery = dataNode["PvtzDiscovery"].asString();
+	if(!dataNode["MicroRegistration"].isNull())
+		data_.microRegistration = dataNode["MicroRegistration"].asString();
+	if(!dataNode["NasConfigs"].isNull())
+		data_.nasConfigs = dataNode["NasConfigs"].asString();
+	if(!dataNode["Python"].isNull())
+		data_.python = dataNode["Python"].asString();
+	if(!dataNode["PythonModules"].isNull())
+		data_.pythonModules = dataNode["PythonModules"].asString();
 	auto allConfigMapMountDescNode = dataNode["ConfigMapMountDesc"]["ConfigMapMountDescItem"];
 	for (auto dataNodeConfigMapMountDescConfigMapMountDescItem : allConfigMapMountDescNode)
 	{

+ 2 - 0
sae/src/model/DescribeApplicationInstancesResult.cc

@@ -74,6 +74,8 @@ void DescribeApplicationInstancesResult::parse(const std::string &payload)
 			instanceObject.eip = dataNodeInstancesInstance["Eip"].asString();
 		if(!dataNodeInstancesInstance["FinishTimeStamp"].isNull())
 			instanceObject.finishTimeStamp = std::stol(dataNodeInstancesInstance["FinishTimeStamp"].asString());
+		if(!dataNodeInstancesInstance["DebugStatus"].isNull())
+			instanceObject.debugStatus = dataNodeInstancesInstance["DebugStatus"].asString() == "true";
 		data_.instances.push_back(instanceObject);
 	}
 	if(!value["Message"].isNull())

+ 4 - 0
sae/src/model/DescribeApplicationSlbsResult.cc

@@ -48,6 +48,10 @@ void DescribeApplicationSlbsResult::parse(const std::string &payload)
 		data_.intranetSlbId = dataNode["IntranetSlbId"].asString();
 	if(!dataNode["IntranetIp"].isNull())
 		data_.intranetIp = dataNode["IntranetIp"].asString();
+	if(!dataNode["InternetSlbExpired"].isNull())
+		data_.internetSlbExpired = dataNode["InternetSlbExpired"].asString() == "true";
+	if(!dataNode["IntranetSlbExpired"].isNull())
+		data_.intranetSlbExpired = dataNode["IntranetSlbExpired"].asString() == "true";
 	auto allIntranetNode = dataNode["Intranet"]["IntranetItem"];
 	for (auto dataNodeIntranetIntranetItem : allIntranetNode)
 	{

+ 9 - 0
sae/src/model/DescribeConfigurationPriceRequest.cc

@@ -44,3 +44,12 @@ void DescribeConfigurationPriceRequest::setCpu(int cpu) {
   setParameter(std::string("Cpu"), std::to_string(cpu));
 }
 
+std::string DescribeConfigurationPriceRequest::getWorkload() const {
+  return workload_;
+}
+
+void DescribeConfigurationPriceRequest::setWorkload(const std::string &workload) {
+  workload_ = workload;
+  setParameter(std::string("Workload"), workload);
+}
+

+ 6 - 0
sae/src/model/DescribeIngressResult.cc

@@ -52,6 +52,8 @@ void DescribeIngressResult::parse(const std::string &payload)
 		data_.slbType = dataNode["SlbType"].asString();
 	if(!dataNode["CertId"].isNull())
 		data_.certId = dataNode["CertId"].asString();
+	if(!dataNode["CertIds"].isNull())
+		data_.certIds = dataNode["CertIds"].asString();
 	if(!dataNode["Name"].isNull())
 		data_.name = dataNode["Name"].asString();
 	if(!dataNode["Id"].isNull())
@@ -74,6 +76,8 @@ void DescribeIngressResult::parse(const std::string &payload)
 			ruleObject.appId = dataNodeRulesRule["AppId"].asString();
 		if(!dataNodeRulesRule["Path"].isNull())
 			ruleObject.path = dataNodeRulesRule["Path"].asString();
+		if(!dataNodeRulesRule["BackendProtocol"].isNull())
+			ruleObject.backendProtocol = dataNodeRulesRule["BackendProtocol"].asString();
 		data_.rules.push_back(ruleObject);
 	}
 	auto defaultRuleNode = dataNode["DefaultRule"];
@@ -83,6 +87,8 @@ void DescribeIngressResult::parse(const std::string &payload)
 		data_.defaultRule.appName = defaultRuleNode["AppName"].asString();
 	if(!defaultRuleNode["AppId"].isNull())
 		data_.defaultRule.appId = defaultRuleNode["AppId"].asString();
+	if(!defaultRuleNode["BackendProtocol"].isNull())
+		data_.defaultRule.backendProtocol = defaultRuleNode["BackendProtocol"].asString();
 	if(!value["Message"].isNull())
 		message_ = value["Message"].asString();
 	if(!value["TraceId"].isNull())

+ 64 - 0
sae/src/model/DescribeJobHistoryRequest.cc

@@ -0,0 +1,64 @@
+/*
+ * 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/sae/model/DescribeJobHistoryRequest.h>
+
+using AlibabaCloud::Sae::Model::DescribeJobHistoryRequest;
+
+DescribeJobHistoryRequest::DescribeJobHistoryRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/describeJobHistory"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+DescribeJobHistoryRequest::~DescribeJobHistoryRequest() {}
+
+std::string DescribeJobHistoryRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeJobHistoryRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+long DescribeJobHistoryRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void DescribeJobHistoryRequest::setPageSize(long pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+
+long DescribeJobHistoryRequest::getCurrentPage() const {
+  return currentPage_;
+}
+
+void DescribeJobHistoryRequest::setCurrentPage(long currentPage) {
+  currentPage_ = currentPage;
+  setParameter(std::string("CurrentPage"), std::to_string(currentPage));
+}
+
+std::string DescribeJobHistoryRequest::getState() const {
+  return state_;
+}
+
+void DescribeJobHistoryRequest::setState(const std::string &state) {
+  state_ = state;
+  setParameter(std::string("State"), state);
+}
+

+ 113 - 0
sae/src/model/DescribeJobHistoryResult.cc

@@ -0,0 +1,113 @@
+/*
+ * 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/sae/model/DescribeJobHistoryResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DescribeJobHistoryResult::DescribeJobHistoryResult() :
+	ServiceResult()
+{}
+
+DescribeJobHistoryResult::DescribeJobHistoryResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeJobHistoryResult::~DescribeJobHistoryResult()
+{}
+
+void DescribeJobHistoryResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["CurrentPage"].isNull())
+		data_.currentPage = std::stol(dataNode["CurrentPage"].asString());
+	if(!dataNode["TotalSize"].isNull())
+		data_.totalSize = std::stol(dataNode["TotalSize"].asString());
+	if(!dataNode["PageSize"].isNull())
+		data_.pageSize = std::stol(dataNode["PageSize"].asString());
+	auto allJobsNode = dataNode["Jobs"]["job"];
+	for (auto dataNodeJobsjob : allJobsNode)
+	{
+		Data::Job jobObject;
+		if(!dataNodeJobsjob["JobId"].isNull())
+			jobObject.jobId = dataNodeJobsjob["JobId"].asString();
+		if(!dataNodeJobsjob["Active"].isNull())
+			jobObject.active = std::stol(dataNodeJobsjob["Active"].asString());
+		if(!dataNodeJobsjob["Succeeded"].isNull())
+			jobObject.succeeded = std::stol(dataNodeJobsjob["Succeeded"].asString());
+		if(!dataNodeJobsjob["Failed"].isNull())
+			jobObject.failed = std::stol(dataNodeJobsjob["Failed"].asString());
+		if(!dataNodeJobsjob["StartTime"].isNull())
+			jobObject.startTime = std::stol(dataNodeJobsjob["StartTime"].asString());
+		if(!dataNodeJobsjob["CompletionTime"].isNull())
+			jobObject.completionTime = std::stol(dataNodeJobsjob["CompletionTime"].asString());
+		if(!dataNodeJobsjob["Message"].isNull())
+			jobObject.message = dataNodeJobsjob["Message"].asString();
+		if(!dataNodeJobsjob["State"].isNull())
+			jobObject.state = dataNodeJobsjob["State"].asString();
+		data_.jobs.push_back(jobObject);
+	}
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DescribeJobHistoryResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DescribeJobHistoryResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DescribeJobHistoryResult::Data DescribeJobHistoryResult::getData()const
+{
+	return data_;
+}
+
+std::string DescribeJobHistoryResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DescribeJobHistoryResult::getCode()const
+{
+	return code_;
+}
+
+bool DescribeJobHistoryResult::getSuccess()const
+{
+	return success_;
+}
+

+ 55 - 0
sae/src/model/DescribeJobRequest.cc

@@ -0,0 +1,55 @@
+/*
+ * 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/sae/model/DescribeJobRequest.h>
+
+using AlibabaCloud::Sae::Model::DescribeJobRequest;
+
+DescribeJobRequest::DescribeJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/describeJob"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+DescribeJobRequest::~DescribeJobRequest() {}
+
+std::string DescribeJobRequest::getJobId() const {
+  return jobId_;
+}
+
+void DescribeJobRequest::setJobId(const std::string &jobId) {
+  jobId_ = jobId;
+  setParameter(std::string("JobId"), jobId);
+}
+
+std::string DescribeJobRequest::getVersionId() const {
+  return versionId_;
+}
+
+void DescribeJobRequest::setVersionId(const std::string &versionId) {
+  versionId_ = versionId;
+  setParameter(std::string("VersionId"), versionId);
+}
+
+std::string DescribeJobRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 274 - 0
sae/src/model/DescribeJobResult.cc

@@ -0,0 +1,274 @@
+/*
+ * 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/sae/model/DescribeJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DescribeJobResult::DescribeJobResult() :
+	ServiceResult()
+{}
+
+DescribeJobResult::DescribeJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeJobResult::~DescribeJobResult()
+{}
+
+void DescribeJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["VpcId"].isNull())
+		data_.vpcId = dataNode["VpcId"].asString();
+	if(!dataNode["Readiness"].isNull())
+		data_.readiness = dataNode["Readiness"].asString();
+	if(!dataNode["SecurityGroupId"].isNull())
+		data_.securityGroupId = dataNode["SecurityGroupId"].asString();
+	if(!dataNode["BatchWaitTime"].isNull())
+		data_.batchWaitTime = std::stoi(dataNode["BatchWaitTime"].asString());
+	if(!dataNode["Jdk"].isNull())
+		data_.jdk = dataNode["Jdk"].asString();
+	if(!dataNode["ImageUrl"].isNull())
+		data_.imageUrl = dataNode["ImageUrl"].asString();
+	if(!dataNode["SlsConfigs"].isNull())
+		data_.slsConfigs = dataNode["SlsConfigs"].asString();
+	if(!dataNode["Liveness"].isNull())
+		data_.liveness = dataNode["Liveness"].asString();
+	if(!dataNode["PackageUrl"].isNull())
+		data_.packageUrl = dataNode["PackageUrl"].asString();
+	if(!dataNode["PackageType"].isNull())
+		data_.packageType = dataNode["PackageType"].asString();
+	if(!dataNode["PackageRuntimeCustomBuild"].isNull())
+		data_.packageRuntimeCustomBuild = dataNode["PackageRuntimeCustomBuild"].asString();
+	if(!dataNode["PreStop"].isNull())
+		data_.preStop = dataNode["PreStop"].asString();
+	if(!dataNode["PackageVersion"].isNull())
+		data_.packageVersion = dataNode["PackageVersion"].asString();
+	if(!dataNode["JarStartArgs"].isNull())
+		data_.jarStartArgs = dataNode["JarStartArgs"].asString();
+	if(!dataNode["AppName"].isNull())
+		data_.appName = dataNode["AppName"].asString();
+	if(!dataNode["AppId"].isNull())
+		data_.appId = dataNode["AppId"].asString();
+	if(!dataNode["JarStartOptions"].isNull())
+		data_.jarStartOptions = dataNode["JarStartOptions"].asString();
+	if(!dataNode["Replicas"].isNull())
+		data_.replicas = std::stoi(dataNode["Replicas"].asString());
+	if(!dataNode["MinReadyInstances"].isNull())
+		data_.minReadyInstances = std::stoi(dataNode["MinReadyInstances"].asString());
+	if(!dataNode["Memory"].isNull())
+		data_.memory = std::stoi(dataNode["Memory"].asString());
+	if(!dataNode["Php"].isNull())
+		data_.php = dataNode["Php"].asString();
+	if(!dataNode["PhpConfig"].isNull())
+		data_.phpConfig = dataNode["PhpConfig"].asString();
+	if(!dataNode["PhpConfigLocation"].isNull())
+		data_.phpConfigLocation = dataNode["PhpConfigLocation"].asString();
+	if(!dataNode["PhpExtensions"].isNull())
+		data_.phpExtensions = dataNode["PhpExtensions"].asString();
+	if(!dataNode["PhpPECLExtensions"].isNull())
+		data_.phpPECLExtensions = dataNode["PhpPECLExtensions"].asString();
+	if(!dataNode["PostStart"].isNull())
+		data_.postStart = dataNode["PostStart"].asString();
+	if(!dataNode["TerminationGracePeriodSeconds"].isNull())
+		data_.terminationGracePeriodSeconds = std::stoi(dataNode["TerminationGracePeriodSeconds"].asString());
+	if(!dataNode["CommandArgs"].isNull())
+		data_.commandArgs = dataNode["CommandArgs"].asString();
+	if(!dataNode["NamespaceId"].isNull())
+		data_.namespaceId = dataNode["NamespaceId"].asString();
+	if(!dataNode["MountHost"].isNull())
+		data_.mountHost = dataNode["MountHost"].asString();
+	if(!dataNode["TomcatConfig"].isNull())
+		data_.tomcatConfig = dataNode["TomcatConfig"].asString();
+	if(!dataNode["RegionId"].isNull())
+		data_.regionId = dataNode["RegionId"].asString();
+	if(!dataNode["VSwitchId"].isNull())
+		data_.vSwitchId = dataNode["VSwitchId"].asString();
+	if(!dataNode["Cpu"].isNull())
+		data_.cpu = std::stoi(dataNode["Cpu"].asString());
+	if(!dataNode["Envs"].isNull())
+		data_.envs = dataNode["Envs"].asString();
+	if(!dataNode["EnableAhas"].isNull())
+		data_.enableAhas = dataNode["EnableAhas"].asString();
+	if(!dataNode["CustomHostAlias"].isNull())
+		data_.customHostAlias = dataNode["CustomHostAlias"].asString();
+	if(!dataNode["WebContainer"].isNull())
+		data_.webContainer = dataNode["WebContainer"].asString();
+	if(!dataNode["Command"].isNull())
+		data_.command = dataNode["Command"].asString();
+	if(!dataNode["WarStartOptions"].isNull())
+		data_.warStartOptions = dataNode["WarStartOptions"].asString();
+	if(!dataNode["PhpArmsConfigLocation"].isNull())
+		data_.phpArmsConfigLocation = dataNode["PhpArmsConfigLocation"].asString();
+	if(!dataNode["NasId"].isNull())
+		data_.nasId = dataNode["NasId"].asString();
+	if(!dataNode["OssAkId"].isNull())
+		data_.ossAkId = dataNode["OssAkId"].asString();
+	if(!dataNode["OssAkSecret"].isNull())
+		data_.ossAkSecret = dataNode["OssAkSecret"].asString();
+	if(!dataNode["EdasContainerVersion"].isNull())
+		data_.edasContainerVersion = dataNode["EdasContainerVersion"].asString();
+	if(!dataNode["Timezone"].isNull())
+		data_.timezone = dataNode["Timezone"].asString();
+	if(!dataNode["AppDescription"].isNull())
+		data_.appDescription = dataNode["AppDescription"].asString();
+	if(!dataNode["EnableGreyTagRoute"].isNull())
+		data_.enableGreyTagRoute = dataNode["EnableGreyTagRoute"].asString() == "true";
+	if(!dataNode["MseApplicationId"].isNull())
+		data_.mseApplicationId = dataNode["MseApplicationId"].asString();
+	if(!dataNode["AcrInstanceId"].isNull())
+		data_.acrInstanceId = dataNode["AcrInstanceId"].asString();
+	if(!dataNode["AcrAssumeRoleArn"].isNull())
+		data_.acrAssumeRoleArn = dataNode["AcrAssumeRoleArn"].asString();
+	if(!dataNode["ImagePullSecrets"].isNull())
+		data_.imagePullSecrets = dataNode["ImagePullSecrets"].asString();
+	if(!dataNode["EnableImageAccl"].isNull())
+		data_.enableImageAccl = dataNode["EnableImageAccl"].asString() == "true";
+	if(!dataNode["AssociateEip"].isNull())
+		data_.associateEip = dataNode["AssociateEip"].asString() == "true";
+	if(!dataNode["TriggerConfig"].isNull())
+		data_.triggerConfig = dataNode["TriggerConfig"].asString();
+	if(!dataNode["ConcurrencyPolicy"].isNull())
+		data_.concurrencyPolicy = dataNode["ConcurrencyPolicy"].asString();
+	if(!dataNode["Suspend"].isNull())
+		data_.suspend = dataNode["Suspend"].asString() == "true";
+	if(!dataNode["Timeout"].isNull())
+		data_.timeout = std::stol(dataNode["Timeout"].asString());
+	if(!dataNode["BackoffLimit"].isNull())
+		data_.backoffLimit = std::stol(dataNode["BackoffLimit"].asString());
+	if(!dataNode["Slice"].isNull())
+		data_.slice = dataNode["Slice"].asString() == "true";
+	if(!dataNode["SliceEnvs"].isNull())
+		data_.sliceEnvs = dataNode["SliceEnvs"].asString();
+	if(!dataNode["RefAppId"].isNull())
+		data_.refAppId = dataNode["RefAppId"].asString();
+	if(!dataNode["ProgrammingLanguage"].isNull())
+		data_.programmingLanguage = dataNode["ProgrammingLanguage"].asString();
+	if(!dataNode["NasConfigs"].isNull())
+		data_.nasConfigs = dataNode["NasConfigs"].asString();
+	if(!dataNode["Python"].isNull())
+		data_.python = dataNode["Python"].asString();
+	if(!dataNode["PythonModules"].isNull())
+		data_.pythonModules = dataNode["PythonModules"].asString();
+	auto allConfigMapMountDescNode = dataNode["ConfigMapMountDesc"]["ConfigMapMountDescItem"];
+	for (auto dataNodeConfigMapMountDescConfigMapMountDescItem : allConfigMapMountDescNode)
+	{
+		Data::ConfigMapMountDescItem configMapMountDescItemObject;
+		if(!dataNodeConfigMapMountDescConfigMapMountDescItem["Key"].isNull())
+			configMapMountDescItemObject.key = dataNodeConfigMapMountDescConfigMapMountDescItem["Key"].asString();
+		if(!dataNodeConfigMapMountDescConfigMapMountDescItem["ConfigMapName"].isNull())
+			configMapMountDescItemObject.configMapName = dataNodeConfigMapMountDescConfigMapMountDescItem["ConfigMapName"].asString();
+		if(!dataNodeConfigMapMountDescConfigMapMountDescItem["MountPath"].isNull())
+			configMapMountDescItemObject.mountPath = dataNodeConfigMapMountDescConfigMapMountDescItem["MountPath"].asString();
+		if(!dataNodeConfigMapMountDescConfigMapMountDescItem["ConfigMapId"].isNull())
+			configMapMountDescItemObject.configMapId = std::stol(dataNodeConfigMapMountDescConfigMapMountDescItem["ConfigMapId"].asString());
+		data_.configMapMountDesc.push_back(configMapMountDescItemObject);
+	}
+	auto allTagsNode = dataNode["Tags"]["Tag"];
+	for (auto dataNodeTagsTag : allTagsNode)
+	{
+		Data::Tag tagObject;
+		if(!dataNodeTagsTag["Key"].isNull())
+			tagObject.key = dataNodeTagsTag["Key"].asString();
+		if(!dataNodeTagsTag["Value"].isNull())
+			tagObject.value = dataNodeTagsTag["Value"].asString();
+		data_.tags.push_back(tagObject);
+	}
+	auto allMountDescNode = dataNode["MountDesc"]["MountDescItem"];
+	for (auto dataNodeMountDescMountDescItem : allMountDescNode)
+	{
+		Data::MountDescItem mountDescItemObject;
+		if(!dataNodeMountDescMountDescItem["MountPath"].isNull())
+			mountDescItemObject.mountPath = dataNodeMountDescMountDescItem["MountPath"].asString();
+		if(!dataNodeMountDescMountDescItem["NasPath"].isNull())
+			mountDescItemObject.nasPath = dataNodeMountDescMountDescItem["NasPath"].asString();
+		data_.mountDesc.push_back(mountDescItemObject);
+	}
+	auto allOssMountDescsNode = dataNode["OssMountDescs"]["ossMountDesc"];
+	for (auto dataNodeOssMountDescsossMountDesc : allOssMountDescsNode)
+	{
+		Data::OssMountDesc ossMountDescObject;
+		if(!dataNodeOssMountDescsossMountDesc["bucketName"].isNull())
+			ossMountDescObject.bucketName = dataNodeOssMountDescsossMountDesc["bucketName"].asString();
+		if(!dataNodeOssMountDescsossMountDesc["bucketPath"].isNull())
+			ossMountDescObject.bucketPath = dataNodeOssMountDescsossMountDesc["bucketPath"].asString();
+		if(!dataNodeOssMountDescsossMountDesc["mountPath"].isNull())
+			ossMountDescObject.mountPath = dataNodeOssMountDescsossMountDesc["mountPath"].asString();
+		if(!dataNodeOssMountDescsossMountDesc["readOnly"].isNull())
+			ossMountDescObject.readOnly = dataNodeOssMountDescsossMountDesc["readOnly"].asString() == "true";
+		data_.ossMountDescs.push_back(ossMountDescObject);
+	}
+		auto allRefedAppIds = dataNode["RefedAppIds"]["appId"];
+		for (auto value : allRefedAppIds)
+			data_.refedAppIds.push_back(value.asString());
+		auto allPublicWebHookUrls = dataNode["PublicWebHookUrls"]["publicWebHookUrl"];
+		for (auto value : allPublicWebHookUrls)
+			data_.publicWebHookUrls.push_back(value.asString());
+		auto allVpcWebHookUrls = dataNode["VpcWebHookUrls"]["vpcWebHookUrl"];
+		for (auto value : allVpcWebHookUrls)
+			data_.vpcWebHookUrls.push_back(value.asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DescribeJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DescribeJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DescribeJobResult::Data DescribeJobResult::getData()const
+{
+	return data_;
+}
+
+std::string DescribeJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DescribeJobResult::getCode()const
+{
+	return code_;
+}
+
+bool DescribeJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 46 - 0
sae/src/model/DescribeJobStatusRequest.cc

@@ -0,0 +1,46 @@
+/*
+ * 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/sae/model/DescribeJobStatusRequest.h>
+
+using AlibabaCloud::Sae::Model::DescribeJobStatusRequest;
+
+DescribeJobStatusRequest::DescribeJobStatusRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/describeJobStatus"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+DescribeJobStatusRequest::~DescribeJobStatusRequest() {}
+
+std::string DescribeJobStatusRequest::getJobId() const {
+  return jobId_;
+}
+
+void DescribeJobStatusRequest::setJobId(const std::string &jobId) {
+  jobId_ = jobId;
+  setParameter(std::string("JobId"), jobId);
+}
+
+std::string DescribeJobStatusRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeJobStatusRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 101 - 0
sae/src/model/DescribeJobStatusResult.cc

@@ -0,0 +1,101 @@
+/*
+ * 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/sae/model/DescribeJobStatusResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DescribeJobStatusResult::DescribeJobStatusResult() :
+	ServiceResult()
+{}
+
+DescribeJobStatusResult::DescribeJobStatusResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeJobStatusResult::~DescribeJobStatusResult()
+{}
+
+void DescribeJobStatusResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["JobId"].isNull())
+		data_.jobId = dataNode["JobId"].asString();
+	if(!dataNode["Active"].isNull())
+		data_.active = std::stol(dataNode["Active"].asString());
+	if(!dataNode["Succeeded"].isNull())
+		data_.succeeded = std::stol(dataNode["Succeeded"].asString());
+	if(!dataNode["Failed"].isNull())
+		data_.failed = std::stol(dataNode["Failed"].asString());
+	if(!dataNode["StartTime"].isNull())
+		data_.startTime = std::stol(dataNode["StartTime"].asString());
+	if(!dataNode["CompletionTime"].isNull())
+		data_.completionTime = std::stol(dataNode["CompletionTime"].asString());
+	if(!dataNode["Message"].isNull())
+		data_.message = dataNode["Message"].asString();
+	if(!dataNode["State"].isNull())
+		data_.state = dataNode["State"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DescribeJobStatusResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DescribeJobStatusResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DescribeJobStatusResult::Data DescribeJobStatusResult::getData()const
+{
+	return data_;
+}
+
+std::string DescribeJobStatusResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DescribeJobStatusResult::getCode()const
+{
+	return code_;
+}
+
+bool DescribeJobStatusResult::getSuccess()const
+{
+	return success_;
+}
+

+ 2 - 0
sae/src/model/DescribeNamespaceResourcesResult.cc

@@ -74,6 +74,8 @@ void DescribeNamespaceResourcesResult::parse(const std::string &payload)
 		data_.tenantId = dataNode["TenantId"].asString();
 	if(!dataNode["JumpServerAppId"].isNull())
 		data_.jumpServerAppId = dataNode["JumpServerAppId"].asString();
+	if(!dataNode["JumpServerIp"].isNull())
+		data_.jumpServerIp = dataNode["JumpServerIp"].asString();
 	if(!value["Message"].isNull())
 		message_ = value["Message"].asString();
 	if(!value["TraceId"].isNull())

+ 46 - 0
sae/src/model/DescribeSecretRequest.cc

@@ -0,0 +1,46 @@
+/*
+ * 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/sae/model/DescribeSecretRequest.h>
+
+using AlibabaCloud::Sae::Model::DescribeSecretRequest;
+
+DescribeSecretRequest::DescribeSecretRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/secret/secret"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+DescribeSecretRequest::~DescribeSecretRequest() {}
+
+std::string DescribeSecretRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void DescribeSecretRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+long DescribeSecretRequest::getSecretId() const {
+  return secretId_;
+}
+
+void DescribeSecretRequest::setSecretId(long secretId) {
+  secretId_ = secretId;
+  setParameter(std::string("SecretId"), std::to_string(secretId));
+}
+

+ 109 - 0
sae/src/model/DescribeSecretResult.cc

@@ -0,0 +1,109 @@
+/*
+ * 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/sae/model/DescribeSecretResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+DescribeSecretResult::DescribeSecretResult() :
+	ServiceResult()
+{}
+
+DescribeSecretResult::DescribeSecretResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeSecretResult::~DescribeSecretResult()
+{}
+
+void DescribeSecretResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["NamespaceId"].isNull())
+		data_.namespaceId = dataNode["NamespaceId"].asString();
+	if(!dataNode["SecretId"].isNull())
+		data_.secretId = std::stol(dataNode["SecretId"].asString());
+	if(!dataNode["SecretName"].isNull())
+		data_.secretName = dataNode["SecretName"].asString();
+	if(!dataNode["SecretType"].isNull())
+		data_.secretType = dataNode["SecretType"].asString();
+	if(!dataNode["SecretData"].isNull())
+		data_.secretData = dataNode["SecretData"].asString();
+	if(!dataNode["CreateTime"].isNull())
+		data_.createTime = std::stol(dataNode["CreateTime"].asString());
+	if(!dataNode["UpdateTime"].isNull())
+		data_.updateTime = std::stol(dataNode["UpdateTime"].asString());
+	auto allRelateAppsNode = dataNode["RelateApps"]["RelateApp"];
+	for (auto dataNodeRelateAppsRelateApp : allRelateAppsNode)
+	{
+		Data::RelateApp relateAppObject;
+		if(!dataNodeRelateAppsRelateApp["AppId"].isNull())
+			relateAppObject.appId = dataNodeRelateAppsRelateApp["AppId"].asString();
+		if(!dataNodeRelateAppsRelateApp["AppName"].isNull())
+			relateAppObject.appName = dataNodeRelateAppsRelateApp["AppName"].asString();
+		data_.relateApps.push_back(relateAppObject);
+	}
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string DescribeSecretResult::getMessage()const
+{
+	return message_;
+}
+
+std::string DescribeSecretResult::getTraceId()const
+{
+	return traceId_;
+}
+
+DescribeSecretResult::Data DescribeSecretResult::getData()const
+{
+	return data_;
+}
+
+std::string DescribeSecretResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string DescribeSecretResult::getCode()const
+{
+	return code_;
+}
+
+bool DescribeSecretResult::getSuccess()const
+{
+	return success_;
+}
+

+ 109 - 0
sae/src/model/ExecJobRequest.cc

@@ -0,0 +1,109 @@
+/*
+ * 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/sae/model/ExecJobRequest.h>
+
+using AlibabaCloud::Sae::Model::ExecJobRequest;
+
+ExecJobRequest::ExecJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/execJob"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+ExecJobRequest::~ExecJobRequest() {}
+
+std::string ExecJobRequest::getEventId() const {
+  return eventId_;
+}
+
+void ExecJobRequest::setEventId(const std::string &eventId) {
+  eventId_ = eventId;
+  setParameter(std::string("EventId"), eventId);
+}
+
+std::string ExecJobRequest::getJarStartOptions() const {
+  return jarStartOptions_;
+}
+
+void ExecJobRequest::setJarStartOptions(const std::string &jarStartOptions) {
+  jarStartOptions_ = jarStartOptions;
+  setParameter(std::string("JarStartOptions"), jarStartOptions);
+}
+
+std::string ExecJobRequest::getJarStartArgs() const {
+  return jarStartArgs_;
+}
+
+void ExecJobRequest::setJarStartArgs(const std::string &jarStartArgs) {
+  jarStartArgs_ = jarStartArgs;
+  setParameter(std::string("JarStartArgs"), jarStartArgs);
+}
+
+std::string ExecJobRequest::getCommandArgs() const {
+  return commandArgs_;
+}
+
+void ExecJobRequest::setCommandArgs(const std::string &commandArgs) {
+  commandArgs_ = commandArgs;
+  setParameter(std::string("CommandArgs"), commandArgs);
+}
+
+std::string ExecJobRequest::getAppId() const {
+  return appId_;
+}
+
+void ExecJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+std::string ExecJobRequest::getEnvs() const {
+  return envs_;
+}
+
+void ExecJobRequest::setEnvs(const std::string &envs) {
+  envs_ = envs;
+  setParameter(std::string("Envs"), envs);
+}
+
+std::string ExecJobRequest::getTime() const {
+  return time_;
+}
+
+void ExecJobRequest::setTime(const std::string &time) {
+  time_ = time;
+  setParameter(std::string("Time"), time);
+}
+
+std::string ExecJobRequest::getCommand() const {
+  return command_;
+}
+
+void ExecJobRequest::setCommand(const std::string &command) {
+  command_ = command;
+  setParameter(std::string("Command"), command);
+}
+
+std::string ExecJobRequest::getWarStartOptions() const {
+  return warStartOptions_;
+}
+
+void ExecJobRequest::setWarStartOptions(const std::string &warStartOptions) {
+  warStartOptions_ = warStartOptions;
+  setParameter(std::string("WarStartOptions"), warStartOptions);
+}
+

+ 93 - 0
sae/src/model/ExecJobResult.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/sae/model/ExecJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+ExecJobResult::ExecJobResult() :
+	ServiceResult()
+{}
+
+ExecJobResult::ExecJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ExecJobResult::~ExecJobResult()
+{}
+
+void ExecJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["Data"].isNull())
+		data_.data = dataNode["Data"].asString();
+	if(!dataNode["Msg"].isNull())
+		data_.msg = dataNode["Msg"].asString();
+	if(!dataNode["Success"].isNull())
+		data_.success = dataNode["Success"].asString();
+	if(!dataNode["Code"].isNull())
+		data_.code = dataNode["Code"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string ExecJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string ExecJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+ExecJobResult::Data ExecJobResult::getData()const
+{
+	return data_;
+}
+
+std::string ExecJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string ExecJobResult::getCode()const
+{
+	return code_;
+}
+
+bool ExecJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 2 - 0
sae/src/model/ListIngressesResult.cc

@@ -56,6 +56,8 @@ void ListIngressesResult::parse(const std::string &payload)
 			ingressObject.slbType = dataNodeIngressListIngress["SlbType"].asString();
 		if(!dataNodeIngressListIngress["CertId"].isNull())
 			ingressObject.certId = dataNodeIngressListIngress["CertId"].asString();
+		if(!dataNodeIngressListIngress["CertIds"].isNull())
+			ingressObject.certIds = dataNodeIngressListIngress["CertIds"].asString();
 		if(!dataNodeIngressListIngress["Name"].isNull())
 			ingressObject.name = dataNodeIngressListIngress["Name"].asString();
 		if(!dataNodeIngressListIngress["Id"].isNull())

+ 118 - 0
sae/src/model/ListJobsRequest.cc

@@ -0,0 +1,118 @@
+/*
+ * 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/sae/model/ListJobsRequest.h>
+
+using AlibabaCloud::Sae::Model::ListJobsRequest;
+
+ListJobsRequest::ListJobsRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/listJobs"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+ListJobsRequest::~ListJobsRequest() {}
+
+std::string ListJobsRequest::getAppName() const {
+  return appName_;
+}
+
+void ListJobsRequest::setAppName(const std::string &appName) {
+  appName_ = appName;
+  setParameter(std::string("AppName"), appName);
+}
+
+std::string ListJobsRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void ListJobsRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+int ListJobsRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListJobsRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+
+std::string ListJobsRequest::getOrderBy() const {
+  return orderBy_;
+}
+
+void ListJobsRequest::setOrderBy(const std::string &orderBy) {
+  orderBy_ = orderBy;
+  setParameter(std::string("OrderBy"), orderBy);
+}
+
+std::string ListJobsRequest::getWorkload() const {
+  return workload_;
+}
+
+void ListJobsRequest::setWorkload(const std::string &workload) {
+  workload_ = workload;
+  setParameter(std::string("Workload"), workload);
+}
+
+int ListJobsRequest::getCurrentPage() const {
+  return currentPage_;
+}
+
+void ListJobsRequest::setCurrentPage(int currentPage) {
+  currentPage_ = currentPage;
+  setParameter(std::string("CurrentPage"), std::to_string(currentPage));
+}
+
+std::string ListJobsRequest::getFieldValue() const {
+  return fieldValue_;
+}
+
+void ListJobsRequest::setFieldValue(const std::string &fieldValue) {
+  fieldValue_ = fieldValue;
+  setParameter(std::string("FieldValue"), fieldValue);
+}
+
+bool ListJobsRequest::getReverse() const {
+  return reverse_;
+}
+
+void ListJobsRequest::setReverse(bool reverse) {
+  reverse_ = reverse;
+  setParameter(std::string("Reverse"), reverse ? "true" : "false");
+}
+
+std::string ListJobsRequest::getFieldType() const {
+  return fieldType_;
+}
+
+void ListJobsRequest::setFieldType(const std::string &fieldType) {
+  fieldType_ = fieldType;
+  setParameter(std::string("FieldType"), fieldType);
+}
+
+std::string ListJobsRequest::getTags() const {
+  return tags_;
+}
+
+void ListJobsRequest::setTags(const std::string &tags) {
+  tags_ = tags;
+  setParameter(std::string("Tags"), tags);
+}
+

+ 159 - 0
sae/src/model/ListJobsResult.cc

@@ -0,0 +1,159 @@
+/*
+ * 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/sae/model/ListJobsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+ListJobsResult::ListJobsResult() :
+	ServiceResult()
+{}
+
+ListJobsResult::ListJobsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListJobsResult::~ListJobsResult()
+{}
+
+void ListJobsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["CurrentPage"].isNull())
+		data_.currentPage = std::stoi(dataNode["CurrentPage"].asString());
+	if(!dataNode["TotalSize"].isNull())
+		data_.totalSize = std::stoi(dataNode["TotalSize"].asString());
+	if(!dataNode["PageSize"].isNull())
+		data_.pageSize = std::stoi(dataNode["PageSize"].asString());
+	auto allApplicationsNode = dataNode["Applications"]["Application"];
+	for (auto dataNodeApplicationsApplication : allApplicationsNode)
+	{
+		Data::Application applicationObject;
+		if(!dataNodeApplicationsApplication["AppName"].isNull())
+			applicationObject.appName = dataNodeApplicationsApplication["AppName"].asString();
+		if(!dataNodeApplicationsApplication["NamespaceId"].isNull())
+			applicationObject.namespaceId = dataNodeApplicationsApplication["NamespaceId"].asString();
+		if(!dataNodeApplicationsApplication["AppDeletingStatus"].isNull())
+			applicationObject.appDeletingStatus = dataNodeApplicationsApplication["AppDeletingStatus"].asString() == "true";
+		if(!dataNodeApplicationsApplication["AppId"].isNull())
+			applicationObject.appId = dataNodeApplicationsApplication["AppId"].asString();
+		if(!dataNodeApplicationsApplication["ScaleRuleEnabled"].isNull())
+			applicationObject.scaleRuleEnabled = dataNodeApplicationsApplication["ScaleRuleEnabled"].asString() == "true";
+		if(!dataNodeApplicationsApplication["ScaleRuleType"].isNull())
+			applicationObject.scaleRuleType = dataNodeApplicationsApplication["ScaleRuleType"].asString();
+		if(!dataNodeApplicationsApplication["RunningInstances"].isNull())
+			applicationObject.runningInstances = std::stoi(dataNodeApplicationsApplication["RunningInstances"].asString());
+		if(!dataNodeApplicationsApplication["Instances"].isNull())
+			applicationObject.instances = std::stoi(dataNodeApplicationsApplication["Instances"].asString());
+		if(!dataNodeApplicationsApplication["RegionId"].isNull())
+			applicationObject.regionId = dataNodeApplicationsApplication["RegionId"].asString();
+		if(!dataNodeApplicationsApplication["AppDescription"].isNull())
+			applicationObject.appDescription = dataNodeApplicationsApplication["AppDescription"].asString();
+		if(!dataNodeApplicationsApplication["TriggerConfig"].isNull())
+			applicationObject.triggerConfig = dataNodeApplicationsApplication["TriggerConfig"].asString();
+		if(!dataNodeApplicationsApplication["Suspend"].isNull())
+			applicationObject.suspend = dataNodeApplicationsApplication["Suspend"].asString() == "true";
+		if(!dataNodeApplicationsApplication["Active"].isNull())
+			applicationObject.active = std::stol(dataNodeApplicationsApplication["Active"].asString());
+		if(!dataNodeApplicationsApplication["Succeeded"].isNull())
+			applicationObject.succeeded = std::stol(dataNodeApplicationsApplication["Succeeded"].asString());
+		if(!dataNodeApplicationsApplication["Failed"].isNull())
+			applicationObject.failed = std::stol(dataNodeApplicationsApplication["Failed"].asString());
+		if(!dataNodeApplicationsApplication["LastStartTime"].isNull())
+			applicationObject.lastStartTime = std::stol(dataNodeApplicationsApplication["LastStartTime"].asString());
+		if(!dataNodeApplicationsApplication["CompletionTime"].isNull())
+			applicationObject.completionTime = std::stol(dataNodeApplicationsApplication["CompletionTime"].asString());
+		if(!dataNodeApplicationsApplication["LastChangeorderState"].isNull())
+			applicationObject.lastChangeorderState = dataNodeApplicationsApplication["LastChangeorderState"].asString();
+		if(!dataNodeApplicationsApplication["LastJobState"].isNull())
+			applicationObject.lastJobState = dataNodeApplicationsApplication["LastJobState"].asString();
+		auto allTagsNode = dataNodeApplicationsApplication["Tags"]["TagsItem"];
+		for (auto dataNodeApplicationsApplicationTagsTagsItem : allTagsNode)
+		{
+			Data::Application::TagsItem tagsObject;
+			if(!dataNodeApplicationsApplicationTagsTagsItem["Key"].isNull())
+				tagsObject.key = dataNodeApplicationsApplicationTagsTagsItem["Key"].asString();
+			if(!dataNodeApplicationsApplicationTagsTagsItem["Value"].isNull())
+				tagsObject.value = dataNodeApplicationsApplicationTagsTagsItem["Value"].asString();
+			applicationObject.tags.push_back(tagsObject);
+		}
+		data_.applications.push_back(applicationObject);
+	}
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+	if(!value["CurrentPage"].isNull())
+		currentPage_ = std::stoi(value["CurrentPage"].asString());
+	if(!value["TotalSize"].isNull())
+		totalSize_ = std::stoi(value["TotalSize"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+
+}
+
+std::string ListJobsResult::getMessage()const
+{
+	return message_;
+}
+
+int ListJobsResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListJobsResult::getCurrentPage()const
+{
+	return currentPage_;
+}
+
+ListJobsResult::Data ListJobsResult::getData()const
+{
+	return data_;
+}
+
+std::string ListJobsResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+int ListJobsResult::getTotalSize()const
+{
+	return totalSize_;
+}
+
+std::string ListJobsResult::getCode()const
+{
+	return code_;
+}
+
+bool ListJobsResult::getSuccess()const
+{
+	return success_;
+}
+

+ 37 - 0
sae/src/model/ListSecretsRequest.cc

@@ -0,0 +1,37 @@
+/*
+ * 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/sae/model/ListSecretsRequest.h>
+
+using AlibabaCloud::Sae::Model::ListSecretsRequest;
+
+ListSecretsRequest::ListSecretsRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/secret/secrets"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+ListSecretsRequest::~ListSecretsRequest() {}
+
+std::string ListSecretsRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void ListSecretsRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+

+ 115 - 0
sae/src/model/ListSecretsResult.cc

@@ -0,0 +1,115 @@
+/*
+ * 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/sae/model/ListSecretsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+ListSecretsResult::ListSecretsResult() :
+	ServiceResult()
+{}
+
+ListSecretsResult::ListSecretsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListSecretsResult::~ListSecretsResult()
+{}
+
+void ListSecretsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	auto allSecretsNode = dataNode["Secrets"]["Secret"];
+	for (auto dataNodeSecretsSecret : allSecretsNode)
+	{
+		Data::Secret secretObject;
+		if(!dataNodeSecretsSecret["NamespaceId"].isNull())
+			secretObject.namespaceId = dataNodeSecretsSecret["NamespaceId"].asString();
+		if(!dataNodeSecretsSecret["SecretId"].isNull())
+			secretObject.secretId = std::stol(dataNodeSecretsSecret["SecretId"].asString());
+		if(!dataNodeSecretsSecret["SecretName"].isNull())
+			secretObject.secretName = dataNodeSecretsSecret["SecretName"].asString();
+		if(!dataNodeSecretsSecret["SecretType"].isNull())
+			secretObject.secretType = dataNodeSecretsSecret["SecretType"].asString();
+		if(!dataNodeSecretsSecret["SecretData"].isNull())
+			secretObject.secretData = dataNodeSecretsSecret["SecretData"].asString();
+		if(!dataNodeSecretsSecret["CreateTime"].isNull())
+			secretObject.createTime = std::stol(dataNodeSecretsSecret["CreateTime"].asString());
+		if(!dataNodeSecretsSecret["UpdateTime"].isNull())
+			secretObject.updateTime = std::stol(dataNodeSecretsSecret["UpdateTime"].asString());
+		auto allRelateAppsNode = dataNodeSecretsSecret["RelateApps"]["RelateApp"];
+		for (auto dataNodeSecretsSecretRelateAppsRelateApp : allRelateAppsNode)
+		{
+			Data::Secret::RelateApp relateAppsObject;
+			if(!dataNodeSecretsSecretRelateAppsRelateApp["AppName"].isNull())
+				relateAppsObject.appName = dataNodeSecretsSecretRelateAppsRelateApp["AppName"].asString();
+			if(!dataNodeSecretsSecretRelateAppsRelateApp["AppId"].isNull())
+				relateAppsObject.appId = dataNodeSecretsSecretRelateAppsRelateApp["AppId"].asString();
+			secretObject.relateApps.push_back(relateAppsObject);
+		}
+		data_.secrets.push_back(secretObject);
+	}
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string ListSecretsResult::getMessage()const
+{
+	return message_;
+}
+
+std::string ListSecretsResult::getTraceId()const
+{
+	return traceId_;
+}
+
+ListSecretsResult::Data ListSecretsResult::getData()const
+{
+	return data_;
+}
+
+std::string ListSecretsResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string ListSecretsResult::getCode()const
+{
+	return code_;
+}
+
+bool ListSecretsResult::getSuccess()const
+{
+	return success_;
+}
+

+ 46 - 0
sae/src/model/SuspendJobRequest.cc

@@ -0,0 +1,46 @@
+/*
+ * 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/sae/model/SuspendJobRequest.h>
+
+using AlibabaCloud::Sae::Model::SuspendJobRequest;
+
+SuspendJobRequest::SuspendJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/suspendJob"};
+  setMethod(HttpRequest::Method::Get);
+}
+
+SuspendJobRequest::~SuspendJobRequest() {}
+
+bool SuspendJobRequest::getSuspend() const {
+  return suspend_;
+}
+
+void SuspendJobRequest::setSuspend(bool suspend) {
+  suspend_ = suspend;
+  setParameter(std::string("Suspend"), suspend ? "true" : "false");
+}
+
+std::string SuspendJobRequest::getAppId() const {
+  return appId_;
+}
+
+void SuspendJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 86 - 0
sae/src/model/SuspendJobResult.cc

@@ -0,0 +1,86 @@
+/*
+ * 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/sae/model/SuspendJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+SuspendJobResult::SuspendJobResult() :
+	ServiceResult()
+{}
+
+SuspendJobResult::SuspendJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+SuspendJobResult::~SuspendJobResult()
+{}
+
+void SuspendJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["Data"].isNull())
+		data_ = value["Data"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string SuspendJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string SuspendJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+std::string SuspendJobResult::getData()const
+{
+	return data_;
+}
+
+std::string SuspendJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string SuspendJobResult::getCode()const
+{
+	return code_;
+}
+
+bool SuspendJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 9 - 0
sae/src/model/UpdateIngressRequest.cc

@@ -80,6 +80,15 @@ void UpdateIngressRequest::setCertId(const std::string &certId) {
   setParameter(std::string("CertId"), certId);
 }
 
+std::string UpdateIngressRequest::getCertIds() const {
+  return certIds_;
+}
+
+void UpdateIngressRequest::setCertIds(const std::string &certIds) {
+  certIds_ = certIds;
+  setParameter(std::string("CertIds"), certIds);
+}
+
 std::string UpdateIngressRequest::getListenerProtocol() const {
   return listenerProtocol_;
 }

+ 559 - 0
sae/src/model/UpdateJobRequest.cc

@@ -0,0 +1,559 @@
+/*
+ * 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/sae/model/UpdateJobRequest.h>
+
+using AlibabaCloud::Sae::Model::UpdateJobRequest;
+
+UpdateJobRequest::UpdateJobRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/job/updateJob"};
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateJobRequest::~UpdateJobRequest() {}
+
+std::string UpdateJobRequest::getNasId() const {
+  return nasId_;
+}
+
+void UpdateJobRequest::setNasId(const std::string &nasId) {
+  nasId_ = nasId;
+  setParameter(std::string("NasId"), nasId);
+}
+
+std::string UpdateJobRequest::getJarStartArgs() const {
+  return jarStartArgs_;
+}
+
+void UpdateJobRequest::setJarStartArgs(const std::string &jarStartArgs) {
+  jarStartArgs_ = jarStartArgs;
+  setParameter(std::string("JarStartArgs"), jarStartArgs);
+}
+
+std::string UpdateJobRequest::getConcurrencyPolicy() const {
+  return concurrencyPolicy_;
+}
+
+void UpdateJobRequest::setConcurrencyPolicy(const std::string &concurrencyPolicy) {
+  concurrencyPolicy_ = concurrencyPolicy;
+  setParameter(std::string("ConcurrencyPolicy"), concurrencyPolicy);
+}
+
+std::string UpdateJobRequest::getTriggerConfig() const {
+  return triggerConfig_;
+}
+
+void UpdateJobRequest::setTriggerConfig(const std::string &triggerConfig) {
+  triggerConfig_ = triggerConfig;
+  setParameter(std::string("TriggerConfig"), triggerConfig);
+}
+
+std::string UpdateJobRequest::getOssAkSecret() const {
+  return ossAkSecret_;
+}
+
+void UpdateJobRequest::setOssAkSecret(const std::string &ossAkSecret) {
+  ossAkSecret_ = ossAkSecret;
+  setBodyParameter(std::string("OssAkSecret"), ossAkSecret);
+}
+
+std::string UpdateJobRequest::getMountHost() const {
+  return mountHost_;
+}
+
+void UpdateJobRequest::setMountHost(const std::string &mountHost) {
+  mountHost_ = mountHost;
+  setParameter(std::string("MountHost"), mountHost);
+}
+
+int UpdateJobRequest::getBatchWaitTime() const {
+  return batchWaitTime_;
+}
+
+void UpdateJobRequest::setBatchWaitTime(int batchWaitTime) {
+  batchWaitTime_ = batchWaitTime;
+  setParameter(std::string("BatchWaitTime"), std::to_string(batchWaitTime));
+}
+
+std::string UpdateJobRequest::getEnvs() const {
+  return envs_;
+}
+
+void UpdateJobRequest::setEnvs(const std::string &envs) {
+  envs_ = envs;
+  setParameter(std::string("Envs"), envs);
+}
+
+std::string UpdateJobRequest::getPhpPECLExtensions() const {
+  return phpPECLExtensions_;
+}
+
+void UpdateJobRequest::setPhpPECLExtensions(const std::string &phpPECLExtensions) {
+  phpPECLExtensions_ = phpPECLExtensions;
+  setBodyParameter(std::string("PhpPECLExtensions"), phpPECLExtensions);
+}
+
+std::string UpdateJobRequest::getPhpArmsConfigLocation() const {
+  return phpArmsConfigLocation_;
+}
+
+void UpdateJobRequest::setPhpArmsConfigLocation(const std::string &phpArmsConfigLocation) {
+  phpArmsConfigLocation_ = phpArmsConfigLocation;
+  setParameter(std::string("PhpArmsConfigLocation"), phpArmsConfigLocation);
+}
+
+std::string UpdateJobRequest::getProgrammingLanguage() const {
+  return programmingLanguage_;
+}
+
+void UpdateJobRequest::setProgrammingLanguage(const std::string &programmingLanguage) {
+  programmingLanguage_ = programmingLanguage;
+  setParameter(std::string("ProgrammingLanguage"), programmingLanguage);
+}
+
+std::string UpdateJobRequest::getCustomHostAlias() const {
+  return customHostAlias_;
+}
+
+void UpdateJobRequest::setCustomHostAlias(const std::string &customHostAlias) {
+  customHostAlias_ = customHostAlias;
+  setParameter(std::string("CustomHostAlias"), customHostAlias);
+}
+
+std::string UpdateJobRequest::getJarStartOptions() const {
+  return jarStartOptions_;
+}
+
+void UpdateJobRequest::setJarStartOptions(const std::string &jarStartOptions) {
+  jarStartOptions_ = jarStartOptions;
+  setParameter(std::string("JarStartOptions"), jarStartOptions);
+}
+
+bool UpdateJobRequest::getSlice() const {
+  return slice_;
+}
+
+void UpdateJobRequest::setSlice(bool slice) {
+  slice_ = slice;
+  setParameter(std::string("Slice"), slice ? "true" : "false");
+}
+
+std::string UpdateJobRequest::getConfigMapMountDesc() const {
+  return configMapMountDesc_;
+}
+
+void UpdateJobRequest::setConfigMapMountDesc(const std::string &configMapMountDesc) {
+  configMapMountDesc_ = configMapMountDesc;
+  setBodyParameter(std::string("ConfigMapMountDesc"), configMapMountDesc);
+}
+
+std::string UpdateJobRequest::getOssMountDescs() const {
+  return ossMountDescs_;
+}
+
+void UpdateJobRequest::setOssMountDescs(const std::string &ossMountDescs) {
+  ossMountDescs_ = ossMountDescs;
+  setBodyParameter(std::string("OssMountDescs"), ossMountDescs);
+}
+
+std::string UpdateJobRequest::getImagePullSecrets() const {
+  return imagePullSecrets_;
+}
+
+void UpdateJobRequest::setImagePullSecrets(const std::string &imagePullSecrets) {
+  imagePullSecrets_ = imagePullSecrets;
+  setParameter(std::string("ImagePullSecrets"), imagePullSecrets);
+}
+
+std::string UpdateJobRequest::getPreStop() const {
+  return preStop_;
+}
+
+void UpdateJobRequest::setPreStop(const std::string &preStop) {
+  preStop_ = preStop;
+  setParameter(std::string("PreStop"), preStop);
+}
+
+std::string UpdateJobRequest::getPython() const {
+  return python_;
+}
+
+void UpdateJobRequest::setPython(const std::string &python) {
+  python_ = python;
+  setParameter(std::string("Python"), python);
+}
+
+long UpdateJobRequest::getBackoffLimit() const {
+  return backoffLimit_;
+}
+
+void UpdateJobRequest::setBackoffLimit(long backoffLimit) {
+  backoffLimit_ = backoffLimit;
+  setParameter(std::string("BackoffLimit"), std::to_string(backoffLimit));
+}
+
+std::string UpdateJobRequest::getUpdateStrategy() const {
+  return updateStrategy_;
+}
+
+void UpdateJobRequest::setUpdateStrategy(const std::string &updateStrategy) {
+  updateStrategy_ = updateStrategy;
+  setParameter(std::string("UpdateStrategy"), updateStrategy);
+}
+
+std::string UpdateJobRequest::getChangeOrderDesc() const {
+  return changeOrderDesc_;
+}
+
+void UpdateJobRequest::setChangeOrderDesc(const std::string &changeOrderDesc) {
+  changeOrderDesc_ = changeOrderDesc;
+  setParameter(std::string("ChangeOrderDesc"), changeOrderDesc);
+}
+
+bool UpdateJobRequest::getAutoEnableApplicationScalingRule() const {
+  return autoEnableApplicationScalingRule_;
+}
+
+void UpdateJobRequest::setAutoEnableApplicationScalingRule(bool autoEnableApplicationScalingRule) {
+  autoEnableApplicationScalingRule_ = autoEnableApplicationScalingRule;
+  setParameter(std::string("AutoEnableApplicationScalingRule"), autoEnableApplicationScalingRule ? "true" : "false");
+}
+
+std::string UpdateJobRequest::getPostStart() const {
+  return postStart_;
+}
+
+void UpdateJobRequest::setPostStart(const std::string &postStart) {
+  postStart_ = postStart;
+  setParameter(std::string("PostStart"), postStart);
+}
+
+std::string UpdateJobRequest::getPhpExtensions() const {
+  return phpExtensions_;
+}
+
+void UpdateJobRequest::setPhpExtensions(const std::string &phpExtensions) {
+  phpExtensions_ = phpExtensions;
+  setBodyParameter(std::string("PhpExtensions"), phpExtensions);
+}
+
+bool UpdateJobRequest::getAssociateEip() const {
+  return associateEip_;
+}
+
+void UpdateJobRequest::setAssociateEip(bool associateEip) {
+  associateEip_ = associateEip;
+  setBodyParameter(std::string("AssociateEip"), associateEip ? "true" : "false");
+}
+
+std::string UpdateJobRequest::getWebContainer() const {
+  return webContainer_;
+}
+
+void UpdateJobRequest::setWebContainer(const std::string &webContainer) {
+  webContainer_ = webContainer;
+  setParameter(std::string("WebContainer"), webContainer);
+}
+
+std::string UpdateJobRequest::getEnableAhas() const {
+  return enableAhas_;
+}
+
+void UpdateJobRequest::setEnableAhas(const std::string &enableAhas) {
+  enableAhas_ = enableAhas;
+  setParameter(std::string("EnableAhas"), enableAhas);
+}
+
+std::string UpdateJobRequest::getSlsConfigs() const {
+  return slsConfigs_;
+}
+
+void UpdateJobRequest::setSlsConfigs(const std::string &slsConfigs) {
+  slsConfigs_ = slsConfigs;
+  setParameter(std::string("SlsConfigs"), slsConfigs);
+}
+
+std::string UpdateJobRequest::getCommandArgs() const {
+  return commandArgs_;
+}
+
+void UpdateJobRequest::setCommandArgs(const std::string &commandArgs) {
+  commandArgs_ = commandArgs;
+  setParameter(std::string("CommandArgs"), commandArgs);
+}
+
+std::string UpdateJobRequest::getAcrAssumeRoleArn() const {
+  return acrAssumeRoleArn_;
+}
+
+void UpdateJobRequest::setAcrAssumeRoleArn(const std::string &acrAssumeRoleArn) {
+  acrAssumeRoleArn_ = acrAssumeRoleArn;
+  setParameter(std::string("AcrAssumeRoleArn"), acrAssumeRoleArn);
+}
+
+std::string UpdateJobRequest::getReadiness() const {
+  return readiness_;
+}
+
+void UpdateJobRequest::setReadiness(const std::string &readiness) {
+  readiness_ = readiness;
+  setParameter(std::string("Readiness"), readiness);
+}
+
+std::string UpdateJobRequest::getTimezone() const {
+  return timezone_;
+}
+
+void UpdateJobRequest::setTimezone(const std::string &timezone) {
+  timezone_ = timezone;
+  setParameter(std::string("Timezone"), timezone);
+}
+
+std::string UpdateJobRequest::getOssAkId() const {
+  return ossAkId_;
+}
+
+void UpdateJobRequest::setOssAkId(const std::string &ossAkId) {
+  ossAkId_ = ossAkId;
+  setBodyParameter(std::string("OssAkId"), ossAkId);
+}
+
+std::string UpdateJobRequest::getLiveness() const {
+  return liveness_;
+}
+
+void UpdateJobRequest::setLiveness(const std::string &liveness) {
+  liveness_ = liveness;
+  setParameter(std::string("Liveness"), liveness);
+}
+
+std::string UpdateJobRequest::getPackageVersion() const {
+  return packageVersion_;
+}
+
+void UpdateJobRequest::setPackageVersion(const std::string &packageVersion) {
+  packageVersion_ = packageVersion;
+  setParameter(std::string("PackageVersion"), packageVersion);
+}
+
+std::string UpdateJobRequest::getTomcatConfig() const {
+  return tomcatConfig_;
+}
+
+void UpdateJobRequest::setTomcatConfig(const std::string &tomcatConfig) {
+  tomcatConfig_ = tomcatConfig;
+  setParameter(std::string("TomcatConfig"), tomcatConfig);
+}
+
+long UpdateJobRequest::getTimeout() const {
+  return timeout_;
+}
+
+void UpdateJobRequest::setTimeout(long timeout) {
+  timeout_ = timeout;
+  setParameter(std::string("Timeout"), std::to_string(timeout));
+}
+
+std::string UpdateJobRequest::getWarStartOptions() const {
+  return warStartOptions_;
+}
+
+void UpdateJobRequest::setWarStartOptions(const std::string &warStartOptions) {
+  warStartOptions_ = warStartOptions;
+  setParameter(std::string("WarStartOptions"), warStartOptions);
+}
+
+std::string UpdateJobRequest::getPackageRuntimeCustomBuild() const {
+  return packageRuntimeCustomBuild_;
+}
+
+void UpdateJobRequest::setPackageRuntimeCustomBuild(const std::string &packageRuntimeCustomBuild) {
+  packageRuntimeCustomBuild_ = packageRuntimeCustomBuild;
+  setBodyParameter(std::string("PackageRuntimeCustomBuild"), packageRuntimeCustomBuild);
+}
+
+std::string UpdateJobRequest::getEdasContainerVersion() const {
+  return edasContainerVersion_;
+}
+
+void UpdateJobRequest::setEdasContainerVersion(const std::string &edasContainerVersion) {
+  edasContainerVersion_ = edasContainerVersion;
+  setParameter(std::string("EdasContainerVersion"), edasContainerVersion);
+}
+
+std::string UpdateJobRequest::getPackageUrl() const {
+  return packageUrl_;
+}
+
+void UpdateJobRequest::setPackageUrl(const std::string &packageUrl) {
+  packageUrl_ = packageUrl;
+  setParameter(std::string("PackageUrl"), packageUrl);
+}
+
+int UpdateJobRequest::getTerminationGracePeriodSeconds() const {
+  return terminationGracePeriodSeconds_;
+}
+
+void UpdateJobRequest::setTerminationGracePeriodSeconds(int terminationGracePeriodSeconds) {
+  terminationGracePeriodSeconds_ = terminationGracePeriodSeconds;
+  setParameter(std::string("TerminationGracePeriodSeconds"), std::to_string(terminationGracePeriodSeconds));
+}
+
+std::string UpdateJobRequest::getPhpConfig() const {
+  return phpConfig_;
+}
+
+void UpdateJobRequest::setPhpConfig(const std::string &phpConfig) {
+  phpConfig_ = phpConfig;
+  setBodyParameter(std::string("PhpConfig"), phpConfig);
+}
+
+std::string UpdateJobRequest::getSliceEnvs() const {
+  return sliceEnvs_;
+}
+
+void UpdateJobRequest::setSliceEnvs(const std::string &sliceEnvs) {
+  sliceEnvs_ = sliceEnvs;
+  setParameter(std::string("SliceEnvs"), sliceEnvs);
+}
+
+bool UpdateJobRequest::getEnableImageAccl() const {
+  return enableImageAccl_;
+}
+
+void UpdateJobRequest::setEnableImageAccl(bool enableImageAccl) {
+  enableImageAccl_ = enableImageAccl;
+  setBodyParameter(std::string("EnableImageAccl"), enableImageAccl ? "true" : "false");
+}
+
+bool UpdateJobRequest::getEnableGreyTagRoute() const {
+  return enableGreyTagRoute_;
+}
+
+void UpdateJobRequest::setEnableGreyTagRoute(bool enableGreyTagRoute) {
+  enableGreyTagRoute_ = enableGreyTagRoute;
+  setParameter(std::string("EnableGreyTagRoute"), enableGreyTagRoute ? "true" : "false");
+}
+
+std::string UpdateJobRequest::getReplicas() const {
+  return replicas_;
+}
+
+void UpdateJobRequest::setReplicas(const std::string &replicas) {
+  replicas_ = replicas;
+  setParameter(std::string("Replicas"), replicas);
+}
+
+std::string UpdateJobRequest::getCommand() const {
+  return command_;
+}
+
+void UpdateJobRequest::setCommand(const std::string &command) {
+  command_ = command;
+  setParameter(std::string("Command"), command);
+}
+
+std::string UpdateJobRequest::getMountDesc() const {
+  return mountDesc_;
+}
+
+void UpdateJobRequest::setMountDesc(const std::string &mountDesc) {
+  mountDesc_ = mountDesc;
+  setParameter(std::string("MountDesc"), mountDesc);
+}
+
+std::string UpdateJobRequest::getJdk() const {
+  return jdk_;
+}
+
+void UpdateJobRequest::setJdk(const std::string &jdk) {
+  jdk_ = jdk;
+  setParameter(std::string("Jdk"), jdk);
+}
+
+int UpdateJobRequest::getMinReadyInstances() const {
+  return minReadyInstances_;
+}
+
+void UpdateJobRequest::setMinReadyInstances(int minReadyInstances) {
+  minReadyInstances_ = minReadyInstances;
+  setParameter(std::string("MinReadyInstances"), std::to_string(minReadyInstances));
+}
+
+std::string UpdateJobRequest::getAcrInstanceId() const {
+  return acrInstanceId_;
+}
+
+void UpdateJobRequest::setAcrInstanceId(const std::string &acrInstanceId) {
+  acrInstanceId_ = acrInstanceId;
+  setBodyParameter(std::string("AcrInstanceId"), acrInstanceId);
+}
+
+std::string UpdateJobRequest::getAppId() const {
+  return appId_;
+}
+
+void UpdateJobRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+std::string UpdateJobRequest::getImageUrl() const {
+  return imageUrl_;
+}
+
+void UpdateJobRequest::setImageUrl(const std::string &imageUrl) {
+  imageUrl_ = imageUrl;
+  setParameter(std::string("ImageUrl"), imageUrl);
+}
+
+std::string UpdateJobRequest::getPhp() const {
+  return php_;
+}
+
+void UpdateJobRequest::setPhp(const std::string &php) {
+  php_ = php;
+  setBodyParameter(std::string("Php"), php);
+}
+
+std::string UpdateJobRequest::getRefAppId() const {
+  return refAppId_;
+}
+
+void UpdateJobRequest::setRefAppId(const std::string &refAppId) {
+  refAppId_ = refAppId;
+  setParameter(std::string("RefAppId"), refAppId);
+}
+
+std::string UpdateJobRequest::getPythonModules() const {
+  return pythonModules_;
+}
+
+void UpdateJobRequest::setPythonModules(const std::string &pythonModules) {
+  pythonModules_ = pythonModules;
+  setParameter(std::string("PythonModules"), pythonModules);
+}
+
+std::string UpdateJobRequest::getPhpConfigLocation() const {
+  return phpConfigLocation_;
+}
+
+void UpdateJobRequest::setPhpConfigLocation(const std::string &phpConfigLocation) {
+  phpConfigLocation_ = phpConfigLocation;
+  setParameter(std::string("PhpConfigLocation"), phpConfigLocation);
+}
+

+ 89 - 0
sae/src/model/UpdateJobResult.cc

@@ -0,0 +1,89 @@
+/*
+ * 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/sae/model/UpdateJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+UpdateJobResult::UpdateJobResult() :
+	ServiceResult()
+{}
+
+UpdateJobResult::UpdateJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateJobResult::~UpdateJobResult()
+{}
+
+void UpdateJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["ChangeOrderId"].isNull())
+		data_.changeOrderId = dataNode["ChangeOrderId"].asString();
+	if(!dataNode["AppId"].isNull())
+		data_.appId = dataNode["AppId"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string UpdateJobResult::getMessage()const
+{
+	return message_;
+}
+
+std::string UpdateJobResult::getTraceId()const
+{
+	return traceId_;
+}
+
+UpdateJobResult::Data UpdateJobResult::getData()const
+{
+	return data_;
+}
+
+std::string UpdateJobResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string UpdateJobResult::getCode()const
+{
+	return code_;
+}
+
+bool UpdateJobResult::getSuccess()const
+{
+	return success_;
+}
+

+ 55 - 0
sae/src/model/UpdateSecretRequest.cc

@@ -0,0 +1,55 @@
+/*
+ * 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/sae/model/UpdateSecretRequest.h>
+
+using AlibabaCloud::Sae::Model::UpdateSecretRequest;
+
+UpdateSecretRequest::UpdateSecretRequest()
+    : RoaServiceRequest("sae", "2019-05-06") {
+  setResourcePath("/pop/v1/sam/secret/secret"};
+  setMethod(HttpRequest::Method::Put);
+}
+
+UpdateSecretRequest::~UpdateSecretRequest() {}
+
+std::string UpdateSecretRequest::getNamespaceId() const {
+  return namespaceId_;
+}
+
+void UpdateSecretRequest::setNamespaceId(const std::string &namespaceId) {
+  namespaceId_ = namespaceId;
+  setParameter(std::string("NamespaceId"), namespaceId);
+}
+
+long UpdateSecretRequest::getSecretId() const {
+  return secretId_;
+}
+
+void UpdateSecretRequest::setSecretId(long secretId) {
+  secretId_ = secretId;
+  setParameter(std::string("SecretId"), std::to_string(secretId));
+}
+
+std::string UpdateSecretRequest::getSecretData() const {
+  return secretData_;
+}
+
+void UpdateSecretRequest::setSecretData(const std::string &secretData) {
+  secretData_ = secretData;
+  setBodyParameter(std::string("SecretData"), secretData);
+}
+

+ 87 - 0
sae/src/model/UpdateSecretResult.cc

@@ -0,0 +1,87 @@
+/*
+ * 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/sae/model/UpdateSecretResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Sae;
+using namespace AlibabaCloud::Sae::Model;
+
+UpdateSecretResult::UpdateSecretResult() :
+	ServiceResult()
+{}
+
+UpdateSecretResult::UpdateSecretResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateSecretResult::~UpdateSecretResult()
+{}
+
+void UpdateSecretResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["SecretId"].isNull())
+		data_.secretId = dataNode["SecretId"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["TraceId"].isNull())
+		traceId_ = value["TraceId"].asString();
+	if(!value["ErrorCode"].isNull())
+		errorCode_ = value["ErrorCode"].asString();
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Success"].isNull())
+		success_ = value["Success"].asString() == "true";
+
+}
+
+std::string UpdateSecretResult::getMessage()const
+{
+	return message_;
+}
+
+std::string UpdateSecretResult::getTraceId()const
+{
+	return traceId_;
+}
+
+UpdateSecretResult::Data UpdateSecretResult::getData()const
+{
+	return data_;
+}
+
+std::string UpdateSecretResult::getErrorCode()const
+{
+	return errorCode_;
+}
+
+std::string UpdateSecretResult::getCode()const
+{
+	return code_;
+}
+
+bool UpdateSecretResult::getSuccess()const
+{
+	return success_;
+}
+