From 8b219fc9a361271da7347ad6d0a71c0f32e8a3c0 Mon Sep 17 00:00:00 2001 From: Huaweicloud-SDK Date: Thu, 18 Jul 2024 17:25:03 +0800 Subject: [PATCH] release 3.1.104 source code --- CHANGELOG.md | 538 ++++++ CHANGELOG_CN.md | 538 ++++++ HuaweiCloud.sln | 1510 +++++++++-------- Services/Aad/Aad.csproj | 2 +- Services/AntiDDoS/AntiDDoS.csproj | 2 +- Services/Aom/Aom.csproj | 2 +- Services/Aos/Aos.csproj | 2 +- Services/As/As.csproj | 2 +- .../V1/Model/CreateScalingPolicyV2Option.cs | 6 + .../As/V1/Model/IntervalAlarmActionsV2.cs | 18 +- .../As/V1/Model/ScalingAllPolicyDetail.cs | 6 + Services/As/V1/Model/ScalingPoliciesV2.cs | 6 + Services/As/V1/Model/ScalingV2PolicyDetail.cs | 6 + .../V1/Model/UpdateScalingV2PolicyOption.cs | 6 + Services/Bms/Bms.csproj | 2 +- Services/Bms/V1/Model/ASICAcceleratorInfo.cs | 105 ++ Services/Bms/V1/Model/FlavorInfos.cs | 30 + Services/Bms/V1/Model/GpuInfo.cs | 105 ++ Services/Cbr/Cbr.csproj | 2 +- Services/Cce/Cce.csproj | 2 +- Services/Cce/V3/CceAsyncClient.cs | 1320 ++++++++++++++ Services/Cce/V3/CceClient.cs | 1320 ++++++++++++++ .../Cce/V3/Model/AutopilotAuthentication.cs | 77 + Services/Cce/V3/Model/AutopilotCluster.cs | 133 ++ .../Cce/V3/Model/AutopilotClusterEndpoints.cs | 91 + .../V3/Model/AutopilotClusterExtendParam.cs | 91 + .../V3/Model/AutopilotClusterInformation.cs | 91 + .../Model/AutopilotClusterInformationSpec.cs | 106 ++ .../Cce/V3/Model/AutopilotClusterMetadata.cs | 163 ++ .../AutopilotClusterMetadataForUpdate.cs | 77 + Services/Cce/V3/Model/AutopilotClusterSpec.cs | 712 ++++++++ .../Cce/V3/Model/AutopilotClusterStatus.cs | 218 +++ .../V3/Model/AutopilotConfigurationItem.cs | 91 + .../Cce/V3/Model/AutopilotContainerNetwork.cs | 185 ++ Services/Cce/V3/Model/AutopilotEniNetwork.cs | 78 + .../Cce/V3/Model/AutopilotEniNetworkUpdate.cs | 78 + Services/Cce/V3/Model/AutopilotHostNetwork.cs | 91 + .../Cce/V3/Model/AutopilotNetworkSubnet.cs | 77 + .../V3/Model/AutopilotPackageConfiguration.cs | 92 + Services/Cce/V3/Model/AutopilotResourceTag.cs | 91 + .../Cce/V3/Model/AutopilotServiceNetwork.cs | 77 + .../BatchCreateAutopilotClusterTagsRequest.cs | 93 + ...BatchCreateAutopilotClusterTagsResponse.cs | 22 + .../BatchDeleteAutopilotClusterTagsRequest.cs | 93 + ...BatchDeleteAutopilotClusterTagsResponse.cs | 22 + .../CreateAutopilotAddonInstanceRequest.cs | 78 + .../CreateAutopilotAddonInstanceResponse.cs | 133 ++ ...teAutopilotClusterMasterSnapshotRequest.cs | 78 + ...eAutopilotClusterMasterSnapshotResponse.cs | 91 + .../V3/Model/CreateAutopilotClusterRequest.cs | 78 + .../Model/CreateAutopilotClusterResponse.cs | 133 ++ ...teAutopilotKubernetesClusterCertRequest.cs | 93 + ...eAutopilotKubernetesClusterCertResponse.cs | 179 ++ .../Model/CreateAutopilotPostCheckRequest.cs | 93 + .../Model/CreateAutopilotPostCheckResponse.cs | 133 ++ .../Model/CreateAutopilotPreCheckRequest.cs | 93 + .../Model/CreateAutopilotPreCheckResponse.cs | 133 ++ .../V3/Model/CreateAutopilotReleaseRequest.cs | 93 + .../Model/CreateAutopilotReleaseResponse.cs | 287 ++++ .../CreateAutopilotUpgradeWorkFlowRequest.cs | 93 + .../CreateAutopilotUpgradeWorkFlowResponse.cs | 133 ++ .../DeleteAutopilotAddonInstanceRequest.cs | 93 + .../DeleteAutopilotAddonInstanceResponse.cs | 77 + .../V3/Model/DeleteAutopilotChartRequest.cs | 78 + .../V3/Model/DeleteAutopilotChartResponse.cs | 77 + .../V3/Model/DeleteAutopilotClusterRequest.cs | 960 +++++++++++ .../Model/DeleteAutopilotClusterResponse.cs | 133 ++ .../V3/Model/DeleteAutopilotReleaseRequest.cs | 108 ++ .../Model/DeleteAutopilotReleaseResponse.cs | 77 + .../V3/Model/DownloadAutopilotChartRequest.cs | 78 + .../Model/DownloadAutopilotChartResponse.cs | 22 + .../ListAutopilotAddonInstancesRequest.cs | 78 + .../ListAutopilotAddonInstancesResponse.cs | 106 ++ .../ListAutopilotAddonTemplatesRequest.cs | 78 + .../ListAutopilotAddonTemplatesResponse.cs | 106 ++ .../V3/Model/ListAutopilotChartsRequest.cs | 22 + .../V3/Model/ListAutopilotChartsResponse.cs | 78 + ...opilotClusterMasterSnapshotTasksRequest.cs | 78 + ...pilotClusterMasterSnapshotTasksResponse.cs | 134 ++ ...opilotClusterUpgradeFeatureGatesRequest.cs | 22 + ...pilotClusterUpgradeFeatureGatesResponse.cs | 120 ++ ...ListAutopilotClusterUpgradePathsRequest.cs | 22 + ...istAutopilotClusterUpgradePathsResponse.cs | 120 ++ .../V3/Model/ListAutopilotClustersRequest.cs | 381 +++++ .../V3/Model/ListAutopilotClustersResponse.cs | 106 ++ .../ListAutopilotPreCheckTasksRequest.cs | 78 + .../ListAutopilotPreCheckTasksResponse.cs | 120 ++ .../V3/Model/ListAutopilotReleasesRequest.cs | 108 ++ .../V3/Model/ListAutopilotReleasesResponse.cs | 78 + ...ListAutopilotUpgradeClusterTasksRequest.cs | 78 + ...istAutopilotUpgradeClusterTasksResponse.cs | 120 ++ .../ListAutopilotUpgradeWorkFlowsRequest.cs | 78 + .../ListAutopilotUpgradeWorkFlowsResponse.cs | 105 ++ ...RetryAutopilotUpgradeClusterTaskRequest.cs | 78 + ...etryAutopilotUpgradeClusterTaskResponse.cs | 22 + .../RollbackAutopilotAddonInstanceRequest.cs | 93 + .../RollbackAutopilotAddonInstanceResponse.cs | 133 ++ .../ShowAutopilotAddonInstanceRequest.cs | 93 + .../ShowAutopilotAddonInstanceResponse.cs | 133 ++ .../Cce/V3/Model/ShowAutopilotChartRequest.cs | 78 + .../V3/Model/ShowAutopilotChartResponse.cs | 245 +++ .../Model/ShowAutopilotChartValuesRequest.cs | 78 + .../Model/ShowAutopilotChartValuesResponse.cs | 77 + .../ShowAutopilotClusterEndpointsRequest.cs | 78 + .../ShowAutopilotClusterEndpointsResponse.cs | 105 ++ .../V3/Model/ShowAutopilotClusterRequest.cs | 93 + .../V3/Model/ShowAutopilotClusterResponse.cs | 133 ++ .../ShowAutopilotClusterUpgradeInfoRequest.cs | 78 + ...ShowAutopilotClusterUpgradeInfoResponse.cs | 133 ++ .../Cce/V3/Model/ShowAutopilotJobRequest.cs | 78 + .../Cce/V3/Model/ShowAutopilotJobResponse.cs | 133 ++ .../V3/Model/ShowAutopilotPreCheckRequest.cs | 93 + .../V3/Model/ShowAutopilotPreCheckResponse.cs | 133 ++ .../V3/Model/ShowAutopilotQuotasRequest.cs | 22 + .../V3/Model/ShowAutopilotQuotasResponse.cs | 78 + .../ShowAutopilotReleaseHistoryRequest.cs | 108 ++ .../ShowAutopilotReleaseHistoryResponse.cs | 78 + .../V3/Model/ShowAutopilotReleaseRequest.cs | 108 ++ .../V3/Model/ShowAutopilotReleaseResponse.cs | 287 ++++ .../ShowAutopilotUpgradeClusterTaskRequest.cs | 93 + ...ShowAutopilotUpgradeClusterTaskResponse.cs | 133 ++ .../ShowAutopilotUpgradeWorkFlowRequest.cs | 93 + .../ShowAutopilotUpgradeWorkFlowResponse.cs | 133 ++ .../ShowAutopilotUserChartsQuotasRequest.cs | 22 + .../ShowAutopilotUserChartsQuotasResponse.cs | 77 + .../UpdateAutopilotAddonInstanceRequest.cs | 93 + .../UpdateAutopilotAddonInstanceResponse.cs | 133 ++ .../V3/Model/UpdateAutopilotChartRequest.cs | 93 + .../Model/UpdateAutopilotChartRequestBody.cs | 117 ++ .../V3/Model/UpdateAutopilotChartResponse.cs | 245 +++ .../V3/Model/UpdateAutopilotClusterRequest.cs | 93 + .../Model/UpdateAutopilotClusterResponse.cs | 133 ++ .../V3/Model/UpdateAutopilotReleaseRequest.cs | 123 ++ .../Model/UpdateAutopilotReleaseResponse.cs | 287 ++++ .../Model/UpgradeAutopilotClusterRequest.cs | 93 + .../Model/UpgradeAutopilotClusterResponse.cs | 91 + .../UpgradeAutopilotWorkFlowUpdateRequest.cs | 108 ++ .../UpgradeAutopilotWorkFlowUpdateResponse.cs | 133 ++ .../V3/Model/UploadAutopilotChartRequest.cs | 78 + .../Model/UploadAutopilotChartRequestBody.cs | 117 ++ .../V3/Model/UploadAutopilotChartResponse.cs | 245 +++ Services/Cdn/Cdn.csproj | 2 +- Services/Ces/Ces.csproj | 2 +- Services/Cfw/Cfw.csproj | 2 +- Services/Classroom/Classroom.csproj | 2 +- Services/CloudRtc/CloudRtc.csproj | 2 +- Services/CodeArtsBuild/CodeArtsBuild.csproj | 2 +- Services/CodeArtsDeploy/CodeArtsDeploy.csproj | 2 +- Services/Csms/Csms.csproj | 2 +- Services/Cts/Cts.csproj | 2 +- Services/Cts/V3/Model/Attributes.cs | 91 + Services/Cts/V3/Model/ListTracesRequest.cs | 30 + Services/Cts/V3/Model/SessionContext.cs | 77 + Services/Cts/V3/Model/Traces.cs | 28 + Services/Cts/V3/Model/UserInfo.cs | 245 ++- Services/Dbss/Dbss.csproj | 2 +- Services/Dcs/Dcs.csproj | 2 +- Services/Dds/Dds.csproj | 2 +- Services/Demo/Demo.csproj | 2 +- Services/Dns/Dns.csproj | 2 +- Services/Dns/V2/Region/DnsRegion.cs | 9 + Services/Drs/Drs.csproj | 2 +- Services/Drs/V3/Model/CreateJobReq.cs | 36 +- Services/Drs/V3/Model/ModifyJobReq.cs | 36 +- Services/Ecs/Ecs.csproj | 2 +- Services/Ecs/V2/Model/ASICAcceleratorInfo.cs | 105 ++ Services/Ecs/V2/Model/GpuInfo.cs | 105 ++ Services/Ecs/V2/Model/ServerFlavor.cs | 30 + Services/Eip/Eip.csproj | 2 +- Services/Elb/Elb.csproj | 2 +- Services/Elb/V3/ElbAsyncClient.cs | 114 +- Services/Elb/V3/ElbClient.cs | 114 +- Services/Elb/V3/Model/AutoscalingRef.cs | 2 +- Services/Elb/V3/Model/AvailabilityZone.cs | 2 +- .../Model/BatchAddAvailableZonesResponse.cs | 4 +- .../Elb/V3/Model/BatchCreateMembersOption.cs | 2 +- .../Elb/V3/Model/BatchDeleteIpListOption.cs | 2 +- .../Elb/V3/Model/BatchDeleteIpListRequest.cs | 2 +- .../Elb/V3/Model/BatchDeleteIpListResponse.cs | 2 +- Services/Elb/V3/Model/BatchMember.cs | 32 +- Services/Elb/V3/Model/BatchUpdateMember.cs | 32 +- .../Model/BatchUpdatePriorityRequestBody.cs | 2 +- Services/Elb/V3/Model/CertificateInfo.cs | 45 +- ...ChangeLoadbalancerChargeModeRequestBody.cs | 6 +- Services/Elb/V3/Model/ConnectionDrain.cs | 4 +- .../V3/Model/CountPreoccupyIpNumRequest.cs | 4 +- .../Elb/V3/Model/CreateCertificateOption.cs | 2 +- .../CreateCertificatePrivateKeyEchoRequest.cs | 78 + ...ateCertificatePrivateKeyEchoRequestBody.cs | 77 + ...CreateCertificatePrivateKeyEchoResponse.cs | 91 + .../V3/Model/CreateFixtedResponseConfig.cs | 44 +- .../Elb/V3/Model/CreateHealthMonitorOption.cs | 6 +- .../Elb/V3/Model/CreateInsertHeaderConfig.cs | 105 ++ .../Elb/V3/Model/CreateInsertHeadersConfig.cs | 78 + .../Elb/V3/Model/CreateIpGroupIpOption.cs | 6 +- Services/Elb/V3/Model/CreateIpGroupOption.cs | 10 +- .../Elb/V3/Model/CreateIpGroupResponse.cs | 2 +- Services/Elb/V3/Model/CreateL7PolicyOption.cs | 33 +- .../Elb/V3/Model/CreateL7PolicyRuleOption.cs | 4 +- .../V3/Model/CreateListenerIpGroupOption.cs | 2 +- Services/Elb/V3/Model/CreateListenerOption.cs | 22 +- .../CreateLoadBalancerBandwidthOption.cs | 20 +- .../Elb/V3/Model/CreateLoadBalancerOption.cs | 78 +- .../Model/CreateLoadBalancerPublicIpOption.cs | 8 +- .../V3/Model/CreateLoadBalancerRequestBody.cs | 2 +- .../V3/Model/CreateLoadBalancerResponse.cs | 4 +- .../CreateLoadbalancerAutoscalingOption.cs | 6 +- .../CreateMasterSlaveHealthMonitorOption.cs | 4 +- .../V3/Model/CreateMasterSlaveMemberOption.cs | 2 +- .../V3/Model/CreateMasterSlavePoolOption.cs | 4 +- Services/Elb/V3/Model/CreateMemberOption.cs | 4 +- Services/Elb/V3/Model/CreatePoolOption.cs | 46 +- .../Elb/V3/Model/CreatePoolSlowStartOption.cs | 2 +- .../Elb/V3/Model/CreateRedirectPoolsConfig.cs | 91 + .../Model/CreateRedirectPoolsExtendConfig.cs | 46 +- .../CreateRedirectPoolsStickySessionConfig.cs | 91 + .../Elb/V3/Model/CreateRedirectUrlConfig.cs | 30 +- .../Elb/V3/Model/CreateRemoveHeaderConfig.cs | 77 + .../Elb/V3/Model/CreateRemoveHeadersConfig.cs | 78 + .../Elb/V3/Model/CreateRewriteUrlConfig.cs | 8 +- Services/Elb/V3/Model/CreateRuleOption.cs | 4 +- .../Elb/V3/Model/CreateTrafficLimitConfig.cs | 105 ++ Services/Elb/V3/Model/DeleteIpGroupRequest.cs | 2 +- Services/Elb/V3/Model/FixtedResponseConfig.cs | 44 +- Services/Elb/V3/Model/Flavor.cs | 40 +- Services/Elb/V3/Model/HealthMonitor.cs | 6 +- Services/Elb/V3/Model/InsertHeaderConfig.cs | 105 ++ Services/Elb/V3/Model/InsertHeadersConfig.cs | 78 + Services/Elb/V3/Model/IpGroup.cs | 94 +- Services/Elb/V3/Model/IpGroupIp.cs | 2 +- Services/Elb/V3/Model/IpInfo.cs | 4 +- Services/Elb/V3/Model/L7Policy.cs | 37 +- Services/Elb/V3/Model/L7Rule.cs | 14 +- .../Elb/V3/Model/ListAllMembersRequest.cs | 2 +- .../Elb/V3/Model/ListAllMembersResponse.cs | 2 +- .../Elb/V3/Model/ListCertificatesRequest.cs | 34 +- Services/Elb/V3/Model/ListFlavorsRequest.cs | 14 +- Services/Elb/V3/Model/ListFlavorsResponse.cs | 4 +- .../Elb/V3/Model/ListHealthMonitorsRequest.cs | 8 +- Services/Elb/V3/Model/ListIpGroupsRequest.cs | 30 +- Services/Elb/V3/Model/ListIpGroupsResponse.cs | 4 +- .../Elb/V3/Model/ListL7PoliciesRequest.cs | 2 +- Services/Elb/V3/Model/ListL7RulesRequest.cs | 2 +- Services/Elb/V3/Model/ListListenersRequest.cs | 16 +- .../Elb/V3/Model/ListLoadBalancersRequest.cs | 20 +- Services/Elb/V3/Model/ListLogtanksRequest.cs | 2 +- .../V3/Model/ListMasterSlavePoolsRequest.cs | 4 +- Services/Elb/V3/Model/ListMembersRequest.cs | 2 +- Services/Elb/V3/Model/ListPoolsRequest.cs | 55 +- .../V3/Model/ListSecurityPoliciesRequest.cs | 2 +- Services/Elb/V3/Model/Listener.cs | 18 +- Services/Elb/V3/Model/ListenerRef.cs | 2 +- Services/Elb/V3/Model/LoadBalancer.cs | 18 +- .../Elb/V3/Model/LoadBalancerStatusPolicy.cs | 2 +- .../Elb/V3/Model/MasterSlaveHealthMonitor.cs | 4 +- Services/Elb/V3/Model/MasterSlaveMember.cs | 2 +- Services/Elb/V3/Model/MasterSlavePool.cs | 10 +- Services/Elb/V3/Model/Member.cs | 79 +- Services/Elb/V3/Model/MemberInfo.cs | 345 ++++ Services/Elb/V3/Model/PageInfo.cs | 6 +- Services/Elb/V3/Model/Pool.cs | 58 +- Services/Elb/V3/Model/PoolHealth.cs | 77 + Services/Elb/V3/Model/PrepaidCreateOption.cs | 14 +- Services/Elb/V3/Model/Quota.cs | 8 +- Services/Elb/V3/Model/QuotaInfo.cs | 2 +- Services/Elb/V3/Model/RedirectPoolsConfig.cs | 91 + .../Elb/V3/Model/RedirectPoolsExtendConfig.cs | 44 +- .../Model/RedirectPoolsStickySessionConfig.cs | 91 + Services/Elb/V3/Model/RedirectUrlConfig.cs | 30 +- Services/Elb/V3/Model/RemoveHeaderConfig.cs | 77 + Services/Elb/V3/Model/RemoveHeadersConfig.cs | 78 + Services/Elb/V3/Model/RewriteUrlConfig.cs | 8 +- Services/Elb/V3/Model/SessionPersistence.cs | 4 +- .../ShowCertificatePrivateKeyEchoRequest.cs | 22 + .../ShowCertificatePrivateKeyEchoResponse.cs | 91 + Services/Elb/V3/Model/ShowFlavorRequest.cs | 2 +- Services/Elb/V3/Model/ShowFlavorResponse.cs | 2 +- Services/Elb/V3/Model/ShowIpGroupRequest.cs | 2 +- Services/Elb/V3/Model/ShowIpGroupResponse.cs | 2 +- Services/Elb/V3/Model/SlowStart.cs | 2 +- Services/Elb/V3/Model/TrafficLimitConfig.cs | 105 ++ .../Elb/V3/Model/UpadateIpGroupIpOption.cs | 4 +- .../Elb/V3/Model/UpdateCertificateOption.cs | 2 +- .../V3/Model/UpdateFixtedResponseConfig.cs | 44 +- .../Elb/V3/Model/UpdateHealthMonitorOption.cs | 46 +- .../Elb/V3/Model/UpdateInsertHeaderConfig.cs | 105 ++ .../Elb/V3/Model/UpdateInsertHeadersConfig.cs | 78 + Services/Elb/V3/Model/UpdateIpGroupOption.cs | 6 +- Services/Elb/V3/Model/UpdateIpGroupRequest.cs | 2 +- .../Elb/V3/Model/UpdateIpGroupResponse.cs | 2 +- Services/Elb/V3/Model/UpdateIpListOption.cs | 6 +- Services/Elb/V3/Model/UpdateIpListRequest.cs | 2 +- Services/Elb/V3/Model/UpdateIpListResponse.cs | 2 +- Services/Elb/V3/Model/UpdateL7PolicyOption.cs | 31 +- Services/Elb/V3/Model/UpdateL7RuleOption.cs | 2 +- .../V3/Model/UpdateListenerIpGroupOption.cs | 8 +- Services/Elb/V3/Model/UpdateListenerOption.cs | 16 +- .../Elb/V3/Model/UpdateLoadBalancerOption.cs | 20 +- .../V3/Model/UpdateLoadBalancerResponse.cs | 4 +- .../UpdateLoadbalancerAutoscalingOption.cs | 2 +- Services/Elb/V3/Model/UpdatePoolOption.cs | 20 +- .../UpdatePoolSessionPersistenceOption.cs | 8 +- .../Elb/V3/Model/UpdatePoolSlowStartOption.cs | 2 +- .../Elb/V3/Model/UpdateRedirectPoolsConfig.cs | 91 + .../Model/UpdateRedirectPoolsExtendConfig.cs | 44 +- .../UpdateRedirectPoolsStickySessionConfig.cs | 91 + .../Elb/V3/Model/UpdateRedirectUrlConfig.cs | 30 +- .../Elb/V3/Model/UpdateRemoveHeaderConfig.cs | 77 + .../Elb/V3/Model/UpdateRemoveHeadersConfig.cs | 78 + .../Elb/V3/Model/UpdateRewriteUrlConfig.cs | 105 ++ Services/Elb/V3/Model/UpdateRuleCondition.cs | 2 +- .../Elb/V3/Model/UpdateTrafficLimitConfig.cs | 105 ++ Services/Eps/Eps.csproj | 2 +- Services/Evs/Evs.csproj | 2 +- Services/Evs/V2/EvsAsyncClient.cs | 57 + Services/Evs/V2/EvsClient.cs | 57 + Services/Evs/V2/Model/BssParam2.cs | 77 + .../V2/Model/ChangeVolumeChargeModeRequest.cs | 78 + .../ChangeVolumeChargeModeRequestBody.cs | 106 ++ .../Model/ChangeVolumeChargeModeResponse.cs | 77 + .../Model/UnsubscribePostpaidVolumeRequest.cs | 78 + .../UnsubscribePostpaidVolumeResponse.cs | 78 + Services/Evs/V2/Model/UnsubscribeVolume.cs | 119 ++ .../V2/Model/UnsubscribeVolumeRequestBody.cs | 78 + .../V2/Model/UnsubscribeVolumeResponseBody.cs | 78 + Services/Frs/Frs.csproj | 2 +- Services/FunctionGraph/FunctionGraph.csproj | 2 +- .../V2/Model/ListWorkflowExecutionsRequest.cs | 15 + Services/GaussDB/GaussDB.csproj | 2 +- .../GaussDBforNoSQL/GaussDBforNoSQL.csproj | 2 +- .../GaussDBforopenGauss.csproj | 2 +- Services/Geip/Geip.csproj | 2 +- Services/Iam/Iam.csproj | 2 +- Services/Iam/V3/Model/AgencyResult.cs | 14 - Services/Iam/V3/Model/CustomPolicy.cs | 92 + Services/Iam/V3/Model/CustomStatement.cs | 235 +++ Services/Iam/V3/Model/PolicyRoleResult.cs | 2 +- Services/Iam/V3/Model/PolicyStatement.cs | 7 +- Services/Iam/V3/Model/ServiceStatement.cs | 7 +- Services/Image/Image.csproj | 2 +- Services/ImageSearch/ImageSearch.csproj | 2 +- Services/Ims/Ims.csproj | 2 +- Services/Ims/V2/Model/ListImagesRequest.cs | 6 + Services/IoTDA/IoTDA.csproj | 2 +- Services/Ivs/Ivs.csproj | 2 +- Services/Kafka/Kafka.csproj | 2 +- Services/Kms/Kms.csproj | 2 +- Services/Kms/V2/Model/KeyDetails.cs | 14 - Services/Kps/Kps.csproj | 2 +- Services/Live/Live.csproj | 2 +- Services/Live/V2/LiveAsyncClient.cs | 28 + Services/Live/V2/LiveClient.cs | 28 + .../Model/ListPlayDomainStreamInfoRequest.cs | 94 + .../Model/ListPlayDomainStreamInfoResponse.cs | 107 ++ .../Live/V2/Model/PlayDomainStreamInfo.cs | 133 ++ Services/Lts/Lts.csproj | 2 +- Services/Moderation/Moderation.csproj | 2 +- Services/Mpc/Mpc.csproj | 2 +- Services/Msgsms/Msgsms.csproj | 2 +- Services/Nat/Nat.csproj | 2 +- Services/Ocr/Ocr.csproj | 2 +- Services/Organizations/Organizations.csproj | 2 +- .../PanguLargeModels/PanguLargeModels.csproj | 2 +- Services/ProjectMan/ProjectMan.csproj | 2 +- Services/Rabbitmq/Rabbitmq.csproj | 2 +- Services/Ram/Ram.csproj | 2 +- Services/Rds/Rds.csproj | 2 +- Services/RocketMQ/RocketMQ.csproj | 2 +- Services/Sis/Sis.csproj | 2 +- Services/Smn/Smn.csproj | 2 +- Services/Swr/Swr.csproj | 2 +- Services/Tms/Tms.csproj | 2 +- .../Vod/V1/Model/DeleteTranscodeProductReq.cs | 220 +++ .../V1/Model/DeleteTranscodeProductRequest.cs | 78 + .../Model/DeleteTranscodeProductResponse.cs | 241 +++ Services/Vod/V1/Model/ProductDelFailInfo.cs | 91 + .../Vod/V1/Model/ProductGroupDelFailInfo.cs | 106 ++ Services/Vod/V1/Model/ProductGroupInfo.cs | 92 + Services/Vod/V1/Model/ProductUrlInfo.cs | 77 + Services/Vod/V1/Model/VodSampleData.cs | 30 +- Services/Vod/V1/VodAsyncClient.cs | 178 +- Services/Vod/V1/VodClient.cs | 178 +- Services/Vod/Vod.csproj | 2 +- Services/Vpc/V3/VpcAsyncClient.cs | 13 +- Services/Vpc/V3/VpcClient.cs | 13 +- Services/Vpc/Vpc.csproj | 2 +- Services/Vpcep/V1/Region/VpcepRegion.cs | 21 + Services/Vpcep/Vpcep.csproj | 2 +- VERSION | 2 +- 389 files changed, 26640 insertions(+), 1588 deletions(-) create mode 100644 Services/Bms/V1/Model/ASICAcceleratorInfo.cs create mode 100644 Services/Bms/V1/Model/GpuInfo.cs create mode 100644 Services/Cce/V3/Model/AutopilotAuthentication.cs create mode 100644 Services/Cce/V3/Model/AutopilotCluster.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterEndpoints.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterExtendParam.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterInformation.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterInformationSpec.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterMetadata.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterMetadataForUpdate.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterSpec.cs create mode 100644 Services/Cce/V3/Model/AutopilotClusterStatus.cs create mode 100644 Services/Cce/V3/Model/AutopilotConfigurationItem.cs create mode 100644 Services/Cce/V3/Model/AutopilotContainerNetwork.cs create mode 100644 Services/Cce/V3/Model/AutopilotEniNetwork.cs create mode 100644 Services/Cce/V3/Model/AutopilotEniNetworkUpdate.cs create mode 100644 Services/Cce/V3/Model/AutopilotHostNetwork.cs create mode 100644 Services/Cce/V3/Model/AutopilotNetworkSubnet.cs create mode 100644 Services/Cce/V3/Model/AutopilotPackageConfiguration.cs create mode 100644 Services/Cce/V3/Model/AutopilotResourceTag.cs create mode 100644 Services/Cce/V3/Model/AutopilotServiceNetwork.cs create mode 100644 Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsRequest.cs create mode 100644 Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsResponse.cs create mode 100644 Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsRequest.cs create mode 100644 Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotAddonInstanceRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotAddonInstanceResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotClusterRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotClusterResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotPostCheckRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotPostCheckResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotPreCheckRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotPreCheckResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotReleaseRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotReleaseResponse.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowRequest.cs create mode 100644 Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowResponse.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotAddonInstanceRequest.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotAddonInstanceResponse.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotChartRequest.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotChartResponse.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotClusterRequest.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotClusterResponse.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotReleaseRequest.cs create mode 100644 Services/Cce/V3/Model/DeleteAutopilotReleaseResponse.cs create mode 100644 Services/Cce/V3/Model/DownloadAutopilotChartRequest.cs create mode 100644 Services/Cce/V3/Model/DownloadAutopilotChartResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotAddonInstancesRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotAddonInstancesResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotAddonTemplatesRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotAddonTemplatesResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotChartsRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotChartsResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClustersRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotClustersResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotPreCheckTasksRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotPreCheckTasksResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotReleasesRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotReleasesResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksResponse.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsRequest.cs create mode 100644 Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsResponse.cs create mode 100644 Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskRequest.cs create mode 100644 Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskResponse.cs create mode 100644 Services/Cce/V3/Model/RollbackAutopilotAddonInstanceRequest.cs create mode 100644 Services/Cce/V3/Model/RollbackAutopilotAddonInstanceResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotAddonInstanceRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotAddonInstanceResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotChartRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotChartResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotChartValuesRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotChartValuesResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterEndpointsRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterEndpointsResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotJobRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotJobResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotPreCheckRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotPreCheckResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotQuotasRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotQuotasResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotReleaseHistoryRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotReleaseHistoryResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotReleaseRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotReleaseResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowResponse.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasRequest.cs create mode 100644 Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasResponse.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotAddonInstanceRequest.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotAddonInstanceResponse.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotChartRequest.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotChartRequestBody.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotChartResponse.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotClusterRequest.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotClusterResponse.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotReleaseRequest.cs create mode 100644 Services/Cce/V3/Model/UpdateAutopilotReleaseResponse.cs create mode 100644 Services/Cce/V3/Model/UpgradeAutopilotClusterRequest.cs create mode 100644 Services/Cce/V3/Model/UpgradeAutopilotClusterResponse.cs create mode 100644 Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateRequest.cs create mode 100644 Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateResponse.cs create mode 100644 Services/Cce/V3/Model/UploadAutopilotChartRequest.cs create mode 100644 Services/Cce/V3/Model/UploadAutopilotChartRequestBody.cs create mode 100644 Services/Cce/V3/Model/UploadAutopilotChartResponse.cs create mode 100644 Services/Cts/V3/Model/Attributes.cs create mode 100644 Services/Cts/V3/Model/SessionContext.cs create mode 100644 Services/Ecs/V2/Model/ASICAcceleratorInfo.cs create mode 100644 Services/Ecs/V2/Model/GpuInfo.cs create mode 100644 Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequest.cs create mode 100644 Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequestBody.cs create mode 100644 Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoResponse.cs create mode 100644 Services/Elb/V3/Model/CreateInsertHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/CreateInsertHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/CreateRedirectPoolsConfig.cs create mode 100644 Services/Elb/V3/Model/CreateRedirectPoolsStickySessionConfig.cs create mode 100644 Services/Elb/V3/Model/CreateRemoveHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/CreateRemoveHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/CreateTrafficLimitConfig.cs create mode 100644 Services/Elb/V3/Model/InsertHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/InsertHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/MemberInfo.cs create mode 100644 Services/Elb/V3/Model/PoolHealth.cs create mode 100644 Services/Elb/V3/Model/RedirectPoolsConfig.cs create mode 100644 Services/Elb/V3/Model/RedirectPoolsStickySessionConfig.cs create mode 100644 Services/Elb/V3/Model/RemoveHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/RemoveHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoRequest.cs create mode 100644 Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoResponse.cs create mode 100644 Services/Elb/V3/Model/TrafficLimitConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateInsertHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateInsertHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateRedirectPoolsConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateRedirectPoolsStickySessionConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateRemoveHeaderConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateRemoveHeadersConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateRewriteUrlConfig.cs create mode 100644 Services/Elb/V3/Model/UpdateTrafficLimitConfig.cs create mode 100644 Services/Evs/V2/Model/BssParam2.cs create mode 100644 Services/Evs/V2/Model/ChangeVolumeChargeModeRequest.cs create mode 100644 Services/Evs/V2/Model/ChangeVolumeChargeModeRequestBody.cs create mode 100644 Services/Evs/V2/Model/ChangeVolumeChargeModeResponse.cs create mode 100644 Services/Evs/V2/Model/UnsubscribePostpaidVolumeRequest.cs create mode 100644 Services/Evs/V2/Model/UnsubscribePostpaidVolumeResponse.cs create mode 100644 Services/Evs/V2/Model/UnsubscribeVolume.cs create mode 100644 Services/Evs/V2/Model/UnsubscribeVolumeRequestBody.cs create mode 100644 Services/Evs/V2/Model/UnsubscribeVolumeResponseBody.cs create mode 100644 Services/Iam/V3/Model/CustomPolicy.cs create mode 100644 Services/Iam/V3/Model/CustomStatement.cs create mode 100644 Services/Live/V2/Model/ListPlayDomainStreamInfoRequest.cs create mode 100644 Services/Live/V2/Model/ListPlayDomainStreamInfoResponse.cs create mode 100644 Services/Live/V2/Model/PlayDomainStreamInfo.cs create mode 100644 Services/Vod/V1/Model/DeleteTranscodeProductReq.cs create mode 100644 Services/Vod/V1/Model/DeleteTranscodeProductRequest.cs create mode 100644 Services/Vod/V1/Model/DeleteTranscodeProductResponse.cs create mode 100644 Services/Vod/V1/Model/ProductDelFailInfo.cs create mode 100644 Services/Vod/V1/Model/ProductGroupDelFailInfo.cs create mode 100644 Services/Vod/V1/Model/ProductGroupInfo.cs create mode 100644 Services/Vod/V1/Model/ProductUrlInfo.cs diff --git a/CHANGELOG.md b/CHANGELOG.md index 56296f962..762f9dec7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,541 @@ +# 3.1.104 2024-07-18 + +### HuaweiCloud SDK AS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **CreateScalingV2Policy** + - changes of request param + - `+ scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ interval_alarm_actions.percentage` + - `* interval_alarm_actions.lower_bound: int32 -> double` + - `* interval_alarm_actions.upper_bound: int32 -> double` + - **ListAllScalingV2Policies** + - changes of response param + - `+ scaling_policies.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policies.interval_alarm_actions.percentage` + - `* scaling_policies.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policies.interval_alarm_actions.upper_bound: int32 -> double` + - **UpdateScalingV2Policy** + - changes of request param + - `+ scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ interval_alarm_actions.percentage` + - `* interval_alarm_actions.lower_bound: int32 -> double` + - `* interval_alarm_actions.upper_bound: int32 -> double` + - **ShowScalingV2Policy** + - changes of response param + - `+ scaling_policy.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policy.interval_alarm_actions.percentage` + - `* scaling_policy.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policy.interval_alarm_actions.upper_bound: int32 -> double` + - **ListScalingV2Policies** + - changes of response param + - `+ scaling_policies.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policies.interval_alarm_actions.percentage` + - `* scaling_policies.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policies.interval_alarm_actions.upper_bound: int32 -> double` + +### HuaweiCloud SDK BMS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListBareMetalServers** + - changes of response param + - `+ servers.flavor.gpus` + - `+ servers.flavor.asic_accelerators` + - **ListBareMetalServerDetails** + - changes of response param + - `+ server.flavor.gpus` + - `+ server.flavor.asic_accelerators` + +### HuaweiCloud SDK CCE + +- _Features_ + - Support the following APIs: + - `ListAutopilotClusters` + - `CreateAutopilotCluster` + - `ShowAutopilotCluster` + - `UpdateAutopilotCluster` + - `DeleteAutopilotCluster` + - `CreateAutopilotKubernetesClusterCert` + - `ShowAutopilotJob` + - `ShowAutopilotClusterEndpoints` + - `ListAutopilotAddonInstances` + - `CreateAutopilotAddonInstance` + - `ListAutopilotAddonTemplates` + - `ShowAutopilotAddonInstance` + - `UpdateAutopilotAddonInstance` + - `DeleteAutopilotAddonInstance` + - `RollbackAutopilotAddonInstance` + - `UpgradeAutopilotCluster` + - `ShowAutopilotUpgradeClusterTask` + - `RetryAutopilotUpgradeClusterTask` + - `ListAutopilotUpgradeClusterTasks` + - `CreateAutopilotPreCheck` + - `ShowAutopilotPreCheck` + - `ListAutopilotPreCheckTasks` + - `CreateAutopilotPostCheck` + - `CreateAutopilotClusterMasterSnapshot` + - `ListAutopilotClusterMasterSnapshotTasks` + - `ShowAutopilotClusterUpgradeInfo` + - `ListAutopilotClusterUpgradePaths` + - `ListAutopilotClusterUpgradeFeatureGates` + - `ListAutopilotUpgradeWorkFlows` + - `CreateAutopilotUpgradeWorkFlow` + - `ShowAutopilotUpgradeWorkFlow` + - `UpgradeAutopilotWorkFlowUpdate` + - `ShowAutopilotQuotas` + - `BatchCreateAutopilotClusterTags` + - `BatchDeleteAutopilotClusterTags` + - `ListAutopilotCharts` + - `UploadAutopilotChart` + - `ListAutopilotReleases` + - `CreateAutopilotRelease` + - `ShowAutopilotChart` + - `UpdateAutopilotChart` + - `DeleteAutopilotChart` + - `ShowAutopilotRelease` + - `UpdateAutopilotRelease` + - `DeleteAutopilotRelease` + - `DownloadAutopilotChart` + - `ShowAutopilotChartValues` + - `ShowAutopilotReleaseHistory` + - `ShowAutopilotUserChartsQuotas` +- _Bug Fix_ + - None +- _Change_ + - None + +### HuaweiCloud SDK CTS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListTraces** + - changes of request param + - `+ access_key_id` + - `+ enterprise_project_id` + - changes of response param + - `+ traces.enterprise_project_id` + - `+ traces.resource_account_id` + - `+ traces.user.user_name` + - `+ traces.user.account_id` + - `+ traces.user.access_key_id` + - `+ traces.user.principal_urn` + - `+ traces.user.principal_id` + - `+ traces.user.principal_is_root_user` + - `+ traces.user.type` + - `+ traces.user.invoked_by` + - `+ traces.user.session_context` + +### HuaweiCloud SDK DRS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **BatchCreateJobs** + - changes of request param + - `+ jobs.node_type: enum value [micro,small,medium,xlarge,2xlarge]` + - **BatchUpdateJob** + - changes of request param + - `+ jobs.node_type: enum value [micro,small,medium,xlarge,2xlarge]` + +### HuaweiCloud SDK ECS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ShowServer** + - changes of response param + - `+ server.flavor.gpus` + - `+ server.flavor.asic_accelerators` + - **ListServersDetails** + - changes of response param + - `+ servers.flavor.gpus` + - `+ servers.flavor.asic_accelerators` + +### HuaweiCloud SDK ELB + +- _Features_ + - Support the APIs `ShowCertificatePrivateKeyEcho`, `CreateCertificatePrivateKeyEcho` +- _Bug Fix_ + - None +- _Change_ + - **ShowQuota** + - changes of response param + - `+ quota.free_instance_members_per_pool` + - `+ quota.free_instance_listeners_per_loadbalancer` + - **ChangeLoadbalancerChargeMode** + - changes of request param + - `+ pay_type` + - `+ prepaid_options.cloud_service_console_url` + - **ListCertificates** + - changes of request param + - `+ common_name` + - `+ fingerprint` + - changes of response param + - `+ certificates.common_name` + - `+ certificates.fingerprint` + - `+ certificates.subject_alternative_names` + - **CreateCertificate** + - changes of response param + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **ShowCertificate** + - changes of response param + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **UpdateCertificate** + - changes of request param + - `+ certificate.scm_certificate_id` + - changes of response param + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **ListFlavors** + - changes of request param + - `+ loadbalancer_type` + - changes of response param + - `+ flavors.public_border_group` + - `+ flavors.category` + - **ShowFlavor** + - changes of response param + - `+ flavor.public_border_group` + - `+ flavor.category` + - **UpdateLoadBalancer** + - changes of request param + - `+ loadbalancer.gw_flavor_id` + - **ListIpGroups** + - changes of request param + - `+ enterprise_project_id` + - changes of response param + - `+ ipgroups.enterprise_project_id` + - **CreateIpGroup** + - changes of response param + - `+ ipgroup.enterprise_project_id` + - **ShowIpGroup** + - changes of response param + - `+ ipgroup.enterprise_project_id` + - **UpdateIpGroup** + - changes of response param + - `+ ipgroup.enterprise_project_id` + - **UpdateIpList** + - changes of response param + - `+ ipgroup.enterprise_project_id` + - **BatchDeleteIpList** + - changes of response param + - `+ ipgroup.enterprise_project_id` + - **ListListeners** + - changes of response param + - `+ listeners.insert_headers.X-Nuwa-Trace` + - **CreateListener** + - changes of request param + - `+ listener.insert_headers.X-Nuwa-Trace` + - changes of response param + - `+ listener.insert_headers.X-Nuwa-Trace` + - **ShowListener** + - changes of response param + - `+ listener.insert_headers.X-Nuwa-Trace` + - **UpdateListener** + - changes of request param + - `+ listener.insert_headers.X-Nuwa-Trace` + - changes of response param + - `+ listener.insert_headers.X-Nuwa-Trace` + - **ListPools** + - changes of request param + - `+ pool_health` + - `+ any_port_enable` + - `+ public_border_group` + - changes of response param + - `+ pools.enterprise_project_id` + - `+ pools.pool_health` + - `+ pools.public_border_group` + - **CreatePool** + - changes of request param + - `+ pool.target_rebalance` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - changes of response param + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **ShowPool** + - changes of response param + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **UpdatePool** + - changes of request param + - `+ pool.pool_health` + - changes of response param + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **ListMembers** + - changes of response param + - `- members.pool_id` + - `- members.device_owner` + - `- members.device_id` + - `- members.loadbalancer_id` + - `- members.loadbalancers` + - **CreateMember** + - changes of response param + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **ShowMember** + - changes of response param + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **UpdateMember** + - changes of response param + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **ListAllMembers** + - changes of response param + - `* members: list -> list` + - **BatchUpdateMembers** + - changes of response param + - `+ members.created_at` + - `+ members.updated_at` + - **UpdateHealthMonitor** + - changes of request param + - `- healthmonitor.http_method: enum value [PUT,DELETE,TRACE,OPTIONS,CONNECT,PATCH]` + - **ListLoadBalancers** + - changes of request param + - `+ loadbalancer_type` + - **CreateLoadBalancer** + - changes of request param + - `+ loadbalancer.gw_flavor_id` + - `+ loadbalancer.loadbalancer_type` + - `+ loadbalancer.prepaid_options.promotion_info` + - `+ loadbalancer.prepaid_options.cloud_service_console_url` + - **ListL7Policies** + - changes of response param + - `+ l7policies.redirect_pools_config` + - `+ l7policies.redirect_pools_sticky_session_config` + - `+ l7policies.redirect_url_config.insert_headers_config` + - `+ l7policies.redirect_url_config.remove_headers_config` + - `+ l7policies.fixed_response_config.insert_headers_config` + - `+ l7policies.fixed_response_config.remove_headers_config` + - `+ l7policies.fixed_response_config.traffic_limit_config` + - `+ l7policies.redirect_pools_extend_config.insert_headers_config` + - `+ l7policies.redirect_pools_extend_config.remove_headers_config` + - `+ l7policies.redirect_pools_extend_config.traffic_limit_config` + - **CreateL7Policy** + - changes of request param + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - changes of response param + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - **ShowL7Policy** + - changes of response param + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - **UpdateL7Policy** + - changes of request param + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - `* l7policy.redirect_pools_extend_config.rewrite_url_config: object -> object` + - changes of response param + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + +### HuaweiCloud SDK EVS + +- _Features_ + - Support the APIs `ChangeVolumeChargeMode`, `UnsubscribePostpaidVolume` +- _Bug Fix_ + - None +- _Change_ + - None + +### HuaweiCloud SDK FunctionGraph + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListWorkflowExecutions** + - changes of request param + - `+ offset` + +### HuaweiCloud SDK IAM + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListAgencies** + - changes of response param + - `- agencies.duration` + - **CreateAgency** + - changes of response param + - `- agency.duration` + - **ShowAgency** + - changes of response param + - `- agency.duration` + - **UpdateAgency** + - changes of response param + - `- agency.duration` + - **ListRolesForGroupOnEnterpriseProject** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListPermissions** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneShowPermission** + - changes of response param + - `* role.policy.Statement.Resource: list -> object` + - **KeystoneListDomainPermissionsForGroup** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListProjectPermissionsForGroup** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListAllProjectPermissionsForGroup** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **ListDomainPermissionsForAgency** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **ListProjectPermissionsForAgency** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **ListRolesForUserOnEnterpriseProject** + - changes of response param + - `* roles.policy.Statement.Resource: list -> object` + - **CreateCloudServiceCustomPolicy** + - changes of request param + - `* role.policy.Statement.Resource: object -> list` + - changes of response param + - `* role.policy.Statement.Resource: object -> list` + - **UpdateCloudServiceCustomPolicy** + - changes of request param + - `* role.policy.Statement.Resource: object -> list` + - changes of response param + - `* role.policy.Statement.Resource: object -> list` + - **CreateTemporaryAccessKeyByToken** + - changes of request param + - `* auth.identity.policy.Statement.Resource: object -> list` + - **CreateTemporaryAccessKeyByAgency** + - changes of request param + - `* auth.identity.policy.Statement.Resource: object -> list` + +### HuaweiCloud SDK IMS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListImages** + - changes of request param + - `+ __platform: enum value [Huawei Cloud EulerOS]` + +### HuaweiCloud SDK KMS + +- _Features_ + - None +- _Bug Fix_ + - None +- _Change_ + - **ListKeys** + - changes of response param + - `- key_details.key_label` + - **ListKeyDetail** + - changes of response param + - `- key_info.key_label` + - **ListKmsByTags** + - changes of response param + - `- resources.resource_detail.key_label` + +### HuaweiCloud SDK Live + +- _Features_ + - Support the API `ListPlayDomainStreamInfo` +- _Bug Fix_ + - None +- _Change_ + - None + +### HuaweiCloud SDK VOD + +- _Features_ + - Support the API `DeleteTranscodeProduct` +- _Bug Fix_ + - None +- _Change_ + - **ShowVodStatistics** + - changes of response param + - `+ sample_data.storage_warm` + - `+ sample_data.storage_cold` + # 3.1.103 2024-07-11 ### HuaweiCloud SDK CCE diff --git a/CHANGELOG_CN.md b/CHANGELOG_CN.md index 7447bf74e..4884f46da 100644 --- a/CHANGELOG_CN.md +++ b/CHANGELOG_CN.md @@ -1,3 +1,541 @@ +# 3.1.104 2024-07-18 + +### HuaweiCloud SDK AS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **CreateScalingV2Policy** + - 请求参数变更 + - `+ scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ interval_alarm_actions.percentage` + - `* interval_alarm_actions.lower_bound: int32 -> double` + - `* interval_alarm_actions.upper_bound: int32 -> double` + - **ListAllScalingV2Policies** + - 响应参数变更 + - `+ scaling_policies.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policies.interval_alarm_actions.percentage` + - `* scaling_policies.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policies.interval_alarm_actions.upper_bound: int32 -> double` + - **UpdateScalingV2Policy** + - 请求参数变更 + - `+ scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ interval_alarm_actions.percentage` + - `* interval_alarm_actions.lower_bound: int32 -> double` + - `* interval_alarm_actions.upper_bound: int32 -> double` + - **ShowScalingV2Policy** + - 响应参数变更 + - `+ scaling_policy.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policy.interval_alarm_actions.percentage` + - `* scaling_policy.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policy.interval_alarm_actions.upper_bound: int32 -> double` + - **ListScalingV2Policies** + - 响应参数变更 + - `+ scaling_policies.scaling_policy_type: enum value [INTERVAL_ALARM]` + - `+ scaling_policies.interval_alarm_actions.percentage` + - `* scaling_policies.interval_alarm_actions.lower_bound: int32 -> double` + - `* scaling_policies.interval_alarm_actions.upper_bound: int32 -> double` + +### HuaweiCloud SDK BMS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListBareMetalServers** + - 响应参数变更 + - `+ servers.flavor.gpus` + - `+ servers.flavor.asic_accelerators` + - **ListBareMetalServerDetails** + - 响应参数变更 + - `+ server.flavor.gpus` + - `+ server.flavor.asic_accelerators` + +### HuaweiCloud SDK CCE + +- _新增特性_ + - 支持以下接口: + - `ListAutopilotClusters` + - `CreateAutopilotCluster` + - `ShowAutopilotCluster` + - `UpdateAutopilotCluster` + - `DeleteAutopilotCluster` + - `CreateAutopilotKubernetesClusterCert` + - `ShowAutopilotJob` + - `ShowAutopilotClusterEndpoints` + - `ListAutopilotAddonInstances` + - `CreateAutopilotAddonInstance` + - `ListAutopilotAddonTemplates` + - `ShowAutopilotAddonInstance` + - `UpdateAutopilotAddonInstance` + - `DeleteAutopilotAddonInstance` + - `RollbackAutopilotAddonInstance` + - `UpgradeAutopilotCluster` + - `ShowAutopilotUpgradeClusterTask` + - `RetryAutopilotUpgradeClusterTask` + - `ListAutopilotUpgradeClusterTasks` + - `CreateAutopilotPreCheck` + - `ShowAutopilotPreCheck` + - `ListAutopilotPreCheckTasks` + - `CreateAutopilotPostCheck` + - `CreateAutopilotClusterMasterSnapshot` + - `ListAutopilotClusterMasterSnapshotTasks` + - `ShowAutopilotClusterUpgradeInfo` + - `ListAutopilotClusterUpgradePaths` + - `ListAutopilotClusterUpgradeFeatureGates` + - `ListAutopilotUpgradeWorkFlows` + - `CreateAutopilotUpgradeWorkFlow` + - `ShowAutopilotUpgradeWorkFlow` + - `UpgradeAutopilotWorkFlowUpdate` + - `ShowAutopilotQuotas` + - `BatchCreateAutopilotClusterTags` + - `BatchDeleteAutopilotClusterTags` + - `ListAutopilotCharts` + - `UploadAutopilotChart` + - `ListAutopilotReleases` + - `CreateAutopilotRelease` + - `ShowAutopilotChart` + - `UpdateAutopilotChart` + - `DeleteAutopilotChart` + - `ShowAutopilotRelease` + - `UpdateAutopilotRelease` + - `DeleteAutopilotRelease` + - `DownloadAutopilotChart` + - `ShowAutopilotChartValues` + - `ShowAutopilotReleaseHistory` + - `ShowAutopilotUserChartsQuotas` +- _解决问题_ + - 无 +- _特性变更_ + - 无 + +### HuaweiCloud SDK CTS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListTraces** + - 请求参数变更 + - `+ access_key_id` + - `+ enterprise_project_id` + - 响应参数变更 + - `+ traces.enterprise_project_id` + - `+ traces.resource_account_id` + - `+ traces.user.user_name` + - `+ traces.user.account_id` + - `+ traces.user.access_key_id` + - `+ traces.user.principal_urn` + - `+ traces.user.principal_id` + - `+ traces.user.principal_is_root_user` + - `+ traces.user.type` + - `+ traces.user.invoked_by` + - `+ traces.user.session_context` + +### HuaweiCloud SDK DRS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **BatchCreateJobs** + - 请求参数变更 + - `+ jobs.node_type: enum value [micro,small,medium,xlarge,2xlarge]` + - **BatchUpdateJob** + - 请求参数变更 + - `+ jobs.node_type: enum value [micro,small,medium,xlarge,2xlarge]` + +### HuaweiCloud SDK ECS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ShowServer** + - 响应参数变更 + - `+ server.flavor.gpus` + - `+ server.flavor.asic_accelerators` + - **ListServersDetails** + - 响应参数变更 + - `+ servers.flavor.gpus` + - `+ servers.flavor.asic_accelerators` + +### HuaweiCloud SDK ELB + +- _新增特性_ + - 支持接口`ShowCertificatePrivateKeyEcho`、`CreateCertificatePrivateKeyEcho` +- _解决问题_ + - 无 +- _特性变更_ + - **ShowQuota** + - 响应参数变更 + - `+ quota.free_instance_members_per_pool` + - `+ quota.free_instance_listeners_per_loadbalancer` + - **ChangeLoadbalancerChargeMode** + - 请求参数变更 + - `+ pay_type` + - `+ prepaid_options.cloud_service_console_url` + - **ListCertificates** + - 请求参数变更 + - `+ common_name` + - `+ fingerprint` + - 响应参数变更 + - `+ certificates.common_name` + - `+ certificates.fingerprint` + - `+ certificates.subject_alternative_names` + - **CreateCertificate** + - 响应参数变更 + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **ShowCertificate** + - 响应参数变更 + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **UpdateCertificate** + - 请求参数变更 + - `+ certificate.scm_certificate_id` + - 响应参数变更 + - `+ certificate.common_name` + - `+ certificate.fingerprint` + - `+ certificate.subject_alternative_names` + - **ListFlavors** + - 请求参数变更 + - `+ loadbalancer_type` + - 响应参数变更 + - `+ flavors.public_border_group` + - `+ flavors.category` + - **ShowFlavor** + - 响应参数变更 + - `+ flavor.public_border_group` + - `+ flavor.category` + - **UpdateLoadBalancer** + - 请求参数变更 + - `+ loadbalancer.gw_flavor_id` + - **ListIpGroups** + - 请求参数变更 + - `+ enterprise_project_id` + - 响应参数变更 + - `+ ipgroups.enterprise_project_id` + - **CreateIpGroup** + - 响应参数变更 + - `+ ipgroup.enterprise_project_id` + - **ShowIpGroup** + - 响应参数变更 + - `+ ipgroup.enterprise_project_id` + - **UpdateIpGroup** + - 响应参数变更 + - `+ ipgroup.enterprise_project_id` + - **UpdateIpList** + - 响应参数变更 + - `+ ipgroup.enterprise_project_id` + - **BatchDeleteIpList** + - 响应参数变更 + - `+ ipgroup.enterprise_project_id` + - **ListListeners** + - 响应参数变更 + - `+ listeners.insert_headers.X-Nuwa-Trace` + - **CreateListener** + - 请求参数变更 + - `+ listener.insert_headers.X-Nuwa-Trace` + - 响应参数变更 + - `+ listener.insert_headers.X-Nuwa-Trace` + - **ShowListener** + - 响应参数变更 + - `+ listener.insert_headers.X-Nuwa-Trace` + - **UpdateListener** + - 请求参数变更 + - `+ listener.insert_headers.X-Nuwa-Trace` + - 响应参数变更 + - `+ listener.insert_headers.X-Nuwa-Trace` + - **ListPools** + - 请求参数变更 + - `+ pool_health` + - `+ any_port_enable` + - `+ public_border_group` + - 响应参数变更 + - `+ pools.enterprise_project_id` + - `+ pools.pool_health` + - `+ pools.public_border_group` + - **CreatePool** + - 请求参数变更 + - `+ pool.target_rebalance` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - 响应参数变更 + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **ShowPool** + - 响应参数变更 + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **UpdatePool** + - 请求参数变更 + - `+ pool.pool_health` + - 响应参数变更 + - `+ pool.enterprise_project_id` + - `+ pool.pool_health` + - `+ pool.public_border_group` + - **ListMembers** + - 响应参数变更 + - `- members.pool_id` + - `- members.device_owner` + - `- members.device_id` + - `- members.loadbalancer_id` + - `- members.loadbalancers` + - **CreateMember** + - 响应参数变更 + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **ShowMember** + - 响应参数变更 + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **UpdateMember** + - 响应参数变更 + - `- member.pool_id` + - `- member.device_owner` + - `- member.device_id` + - `- member.loadbalancer_id` + - `- member.loadbalancers` + - **ListAllMembers** + - 响应参数变更 + - `* members: list -> list` + - **BatchUpdateMembers** + - 响应参数变更 + - `+ members.created_at` + - `+ members.updated_at` + - **UpdateHealthMonitor** + - 请求参数变更 + - `- healthmonitor.http_method: enum value [PUT,DELETE,TRACE,OPTIONS,CONNECT,PATCH]` + - **ListLoadBalancers** + - 请求参数变更 + - `+ loadbalancer_type` + - **CreateLoadBalancer** + - 请求参数变更 + - `+ loadbalancer.gw_flavor_id` + - `+ loadbalancer.loadbalancer_type` + - `+ loadbalancer.prepaid_options.promotion_info` + - `+ loadbalancer.prepaid_options.cloud_service_console_url` + - **ListL7Policies** + - 响应参数变更 + - `+ l7policies.redirect_pools_config` + - `+ l7policies.redirect_pools_sticky_session_config` + - `+ l7policies.redirect_url_config.insert_headers_config` + - `+ l7policies.redirect_url_config.remove_headers_config` + - `+ l7policies.fixed_response_config.insert_headers_config` + - `+ l7policies.fixed_response_config.remove_headers_config` + - `+ l7policies.fixed_response_config.traffic_limit_config` + - `+ l7policies.redirect_pools_extend_config.insert_headers_config` + - `+ l7policies.redirect_pools_extend_config.remove_headers_config` + - `+ l7policies.redirect_pools_extend_config.traffic_limit_config` + - **CreateL7Policy** + - 请求参数变更 + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - 响应参数变更 + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - **ShowL7Policy** + - 响应参数变更 + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - **UpdateL7Policy** + - 请求参数变更 + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + - `* l7policy.redirect_pools_extend_config.rewrite_url_config: object -> object` + - 响应参数变更 + - `+ l7policy.redirect_pools_config` + - `+ l7policy.redirect_pools_sticky_session_config` + - `+ l7policy.redirect_url_config.insert_headers_config` + - `+ l7policy.redirect_url_config.remove_headers_config` + - `+ l7policy.fixed_response_config.insert_headers_config` + - `+ l7policy.fixed_response_config.remove_headers_config` + - `+ l7policy.fixed_response_config.traffic_limit_config` + - `+ l7policy.redirect_pools_extend_config.insert_headers_config` + - `+ l7policy.redirect_pools_extend_config.remove_headers_config` + - `+ l7policy.redirect_pools_extend_config.traffic_limit_config` + +### HuaweiCloud SDK EVS + +- _新增特性_ + - 支持接口`ChangeVolumeChargeMode`、`UnsubscribePostpaidVolume` +- _解决问题_ + - 无 +- _特性变更_ + - 无 + +### HuaweiCloud SDK FunctionGraph + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListWorkflowExecutions** + - 请求参数变更 + - `+ offset` + +### HuaweiCloud SDK IAM + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListAgencies** + - 响应参数变更 + - `- agencies.duration` + - **CreateAgency** + - 响应参数变更 + - `- agency.duration` + - **ShowAgency** + - 响应参数变更 + - `- agency.duration` + - **UpdateAgency** + - 响应参数变更 + - `- agency.duration` + - **ListRolesForGroupOnEnterpriseProject** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListPermissions** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneShowPermission** + - 响应参数变更 + - `* role.policy.Statement.Resource: list -> object` + - **KeystoneListDomainPermissionsForGroup** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListProjectPermissionsForGroup** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **KeystoneListAllProjectPermissionsForGroup** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **ListDomainPermissionsForAgency** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **ListProjectPermissionsForAgency** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **ListRolesForUserOnEnterpriseProject** + - 响应参数变更 + - `* roles.policy.Statement.Resource: list -> object` + - **CreateCloudServiceCustomPolicy** + - 请求参数变更 + - `* role.policy.Statement.Resource: object -> list` + - 响应参数变更 + - `* role.policy.Statement.Resource: object -> list` + - **UpdateCloudServiceCustomPolicy** + - 请求参数变更 + - `* role.policy.Statement.Resource: object -> list` + - 响应参数变更 + - `* role.policy.Statement.Resource: object -> list` + - **CreateTemporaryAccessKeyByToken** + - 请求参数变更 + - `* auth.identity.policy.Statement.Resource: object -> list` + - **CreateTemporaryAccessKeyByAgency** + - 请求参数变更 + - `* auth.identity.policy.Statement.Resource: object -> list` + +### HuaweiCloud SDK IMS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListImages** + - 请求参数变更 + - `+ __platform: enum value [Huawei Cloud EulerOS]` + +### HuaweiCloud SDK KMS + +- _新增特性_ + - 无 +- _解决问题_ + - 无 +- _特性变更_ + - **ListKeys** + - 响应参数变更 + - `- key_details.key_label` + - **ListKeyDetail** + - 响应参数变更 + - `- key_info.key_label` + - **ListKmsByTags** + - 响应参数变更 + - `- resources.resource_detail.key_label` + +### HuaweiCloud SDK Live + +- _新增特性_ + - 支持接口`ListPlayDomainStreamInfo` +- _解决问题_ + - 无 +- _特性变更_ + - 无 + +### HuaweiCloud SDK VOD + +- _新增特性_ + - 支持接口`DeleteTranscodeProduct` +- _解决问题_ + - 无 +- _特性变更_ + - **ShowVodStatistics** + - 响应参数变更 + - `+ sample_data.storage_warm` + - `+ sample_data.storage_cold` + # 3.1.103 2024-07-11 ### HuaweiCloud SDK CCE diff --git a/HuaweiCloud.sln b/HuaweiCloud.sln index 3c9e1034a..325ad5709 100644 --- a/HuaweiCloud.sln +++ b/HuaweiCloud.sln @@ -3,137 +3,137 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.26124.0 MinimumVisualStudioVersion = 15.0.26124.0 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core", "Core\Core.csproj", "{0E6FE156-B812-48EB-A1E1-12C17254DF8A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core", "Core\Core.csproj", "{0D9616E4-184B-42E1-9C0E-C91CAA98A547}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Services", "Services", "{7D0F3FF7-054D-454B-8355-AD4598AAE157}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Services", "Services", "{49E4AF3E-05F4-401B-9734-C8739B64A986}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dns", "Services\Dns\Dns.csproj", "{545A5E74-C543-429F-A2EF-1D39572628EE}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vod", "Services\Vod\Vod.csproj", "{3172c815-5fea-43e0-9589-8ab6f4af2866}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Geip", "Services\Geip\Geip.csproj", "{23b1d5ea-92c1-4181-9023-ae7400b70586}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Image", "Services\Image\Image.csproj", "{38F2C59A-6FAA-498E-9DAB-6CE2640A539A}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dcs", "Services\Dcs\Dcs.csproj", "{c66dd549-8ef4-48f1-a85b-eaffaa736cee}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PanguLargeModels", "Services\PanguLargeModels\PanguLargeModels.csproj", "{2f67a6e0-a581-11ee-9380-fa163e9f5a2f}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Iam", "Services\Iam\Iam.csproj", "{09E55113-08BD-46BC-B5A3-6440F4410AC8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ces", "Services\Ces\Ces.csproj", "{E2E79C4D-9E38-443B-BF8B-83C087271443}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Msgsms", "Services\Msgsms\Msgsms.csproj", "{e8d81a83-6722-4338-b788-f22e76c31a50}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDB", "Services\GaussDB\GaussDB.csproj", "{19056dcc-ac24-455a-a682-13cd1f3f833f}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageSearch", "Services\ImageSearch\ImageSearch.csproj", "{38F2C59A-6FAA-498E-9DAB-6CE2640A539A}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cdn", "Services\Cdn\Cdn.csproj", "{456c6dc7-f610-410e-85a1-189ba73f1e43}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AntiDDoS", "Services\AntiDDoS\AntiDDoS.csproj", "{e8a48cd8-ef7c-4188-8ddf-644f38d61441}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cfw", "Services\Cfw\Cfw.csproj", "{C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeArtsBuild", "Services\CodeArtsBuild\CodeArtsBuild.csproj", "{1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tms", "Services\Tms\Tms.csproj", "{38D1B59C-9F0A-648E-9DAB-6CE4640A539A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Msgsms", "Services\Msgsms\Msgsms.csproj", "{e8d81a83-6722-4338-b788-f22e76c31a50}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bms", "Services\Bms\Bms.csproj", "{d3bbfb85-g52f-5d67-c75f-8b3507gg7662}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cbr", "Services\Cbr\Cbr.csproj", "{ec1125a1-e08d-4545-a8d0-c9787c86755c}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PanguLargeModels", "Services\PanguLargeModels\PanguLargeModels.csproj", "{2f67a6e0-a581-11ee-9380-fa163e9f5a2f}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vpc", "Services\Vpc\Vpc.csproj", "{96f50236-7030-47ab-af32-bb76484fadec}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProjectMan", "Services\ProjectMan\ProjectMan.csproj", "{535cfc94-6d5b-4da2-bbbd-e9faa9014012}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeArtsDeploy", "Services\CodeArtsDeploy\CodeArtsDeploy.csproj", "{3b6da37f-829b-a36b-0ea5-75d979c938e3}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ims", "Services\Ims\Ims.csproj", "{5B7BFA6B-B85E-4222-8988-16CCF9558393}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bms", "Services\Bms\Bms.csproj", "{d3bbfb85-g52f-5d67-c75f-8b3507gg7662}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lts", "Services\Lts\Lts.csproj", "{00dd2678-7092-4cf6-999d-0f0a388380af}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cce", "Services\Cce\Cce.csproj", "{a4aaea74-f41e-4c56-b64e-7a2496ff4351}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Eip", "Services\Eip\Eip.csproj", "{23b1d5ea-92c1-4181-9023-ae7400b70586}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Frs", "Services\Frs\Frs.csproj", "{6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDBforopenGauss", "Services\GaussDBforopenGauss\GaussDBforopenGauss.csproj", "{0cd2eacf-3743-4b4c-9543-6362a4030dde}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ecs", "Services\Ecs\Ecs.csproj", "{c3aaea74-f41e-4c56-b64e-7a2496ff6551}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mpc", "Services\Mpc\Mpc.csproj", "{c3aaea74-f41e-4c56-b64e-7a2496ff6562}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kms", "Services\Kms\Kms.csproj", "{ECB1152B-9F28-414F-B3E8-B596E421779B}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ram", "Services\Ram\Ram.csproj", "{3dbd55e0-4b6b-03fe-f82f-961c2fc28386}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vod", "Services\Vod\Vod.csproj", "{3172c815-5fea-43e0-9589-8ab6f4af2866}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aom", "Services\Aom\Aom.csproj", "{518fb927-ab1a-5842-3e93-5eed07ab0023}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ImageSearch", "Services\ImageSearch\ImageSearch.csproj", "{38F2C59A-6FAA-498E-9DAB-6CE2640A539A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ocr", "Services\Ocr\Ocr.csproj", "{12cf972d-1c2b-80a1-33cc-056e6677ea5c}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rabbitmq", "Services\Rabbitmq\Rabbitmq.csproj", "{defe4a95-5592-47cc-8dee-9810e0da0ba0}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moderation", "Services\Moderation\Moderation.csproj", "{f77fb0de-9056-11eb-8219-f26d2774ac7a}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Demo", "Services\Demo\Demo.csproj", "{2763ec40-c4dd-11ea-87d0-0242ac130003}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dds", "Services\Dds\Dds.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeArtsBuild", "Services\CodeArtsBuild\CodeArtsBuild.csproj", "{1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rds", "Services\Rds\Rds.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "As", "Services\As\As.csproj", "{D9FEA963-ED3C-416B-B01E-1FF7EE009EA4}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aos", "Services\Aos\Aos.csproj", "{00dd2678-7092-4cf6-999d-0f0a388380ac}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Csms", "Services\Csms\Csms.csproj", "{e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ivs", "Services\Ivs\Ivs.csproj", "{1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDBforNoSQL", "Services\GaussDBforNoSQL\GaussDBforNoSQL.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aad", "Services\Aad\Aad.csproj", "{6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Eps", "Services\Eps\Eps.csproj", "{F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Classroom", "Services\Classroom\Classroom.csproj", "{D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FunctionGraph", "Services\FunctionGraph\FunctionGraph.csproj", "{33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kps", "Services\Kps\Kps.csproj", "{13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cbr", "Services\Cbr\Cbr.csproj", "{ec1125a1-e08d-4545-a8d0-c9787c86755c}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDBforopenGauss", "Services\GaussDBforopenGauss\GaussDBforopenGauss.csproj", "{0cd2eacf-3743-4b4c-9543-6362a4030dde}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Swr", "Services\Swr\Swr.csproj", "{659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IoTDA", "Services\IoTDA\IoTDA.csproj", "{12F2C43A-6FAA-437E-9DAB-6CE8640A524A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dds", "Services\Dds\Dds.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Swr", "Services\Swr\Swr.csproj", "{659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeArtsDeploy", "Services\CodeArtsDeploy\CodeArtsDeploy.csproj", "{3b6da37f-829b-a36b-0ea5-75d979c938e3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elb", "Services\Elb\Elb.csproj", "{8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nat", "Services\Nat\Nat.csproj", "{96f50236-7030-47ab-af32-bb76484fad1c}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProjectMan", "Services\ProjectMan\ProjectMan.csproj", "{535cfc94-6d5b-4da2-bbbd-e9faa9014012}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vpcep", "Services\Vpcep\Vpcep.csproj", "{e4b6779e-2b75-492b-a149-7bc5a58e9469}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dns", "Services\Dns\Dns.csproj", "{545A5E74-C543-429F-A2EF-1D39572628EE}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sis", "Services\Sis\Sis.csproj", "{00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Iam", "Services\Iam\Iam.csproj", "{09E55113-08BD-46BC-B5A3-6440F4410AC8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RocketMQ", "Services\RocketMQ\RocketMQ.csproj", "{defe4a95-5592-47cc-8dee-9810e0da0ba0}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vpcep", "Services\Vpcep\Vpcep.csproj", "{e4b6779e-2b75-492b-a149-7bc5a58e9469}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Live", "Services\Live\Live.csproj", "{728A1394-22BB-4889-AAF7-037CD1EF431A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FunctionGraph", "Services\FunctionGraph\FunctionGraph.csproj", "{33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Vpc", "Services\Vpc\Vpc.csproj", "{F964968D-5065-428A-A770-F3164C79769D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kafka", "Services\Kafka\Kafka.csproj", "{1635d3a9-f723-4184-8328-018a761bb661}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AntiDDoS", "Services\AntiDDoS\AntiDDoS.csproj", "{e8a48cd8-ef7c-4188-8ddf-644f38d61441}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Evs", "Services\Evs\Evs.csproj", "{B6D999F9-9335-433F-BCD2-1E07409AFA39}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Image", "Services\Image\Image.csproj", "{22C78414-DF3E-45C0-8A88-0458C33F765F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Organizations", "Services\Organizations\Organizations.csproj", "{b5175f42-1803-b19d-c5cc-b1c5514b815c}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cts", "Services\Cts\Cts.csproj", "{e8bfe266-7dcb-417d-b714-925b4bb3bd89}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Smn", "Services\Smn\Smn.csproj", "{9e4cf877-53e0-4d2f-b351-e27bd8d907c1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Drs", "Services\Drs\Drs.csproj", "{3b6da37f-829b-a36b-0ea5-75d979c938e3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tms", "Services\Tms\Tms.csproj", "{38D1B59C-9F0A-648E-9DAB-6CE4640A539A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDB", "Services\GaussDB\GaussDB.csproj", "{A65DAB9C-838C-45A4-B73D-A748FBE51A2A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Demo", "Services\Demo\Demo.csproj", "{2763ec40-c4dd-11ea-87d0-0242ac130003}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Moderation", "Services\Moderation\Moderation.csproj", "{f77fb0de-9056-11eb-8219-f26d2774ac7a}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CloudRtc", "Services\CloudRtc\CloudRtc.csproj", "{59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Elb", "Services\Elb\Elb.csproj", "{8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "As", "Services\As\As.csproj", "{D9FEA963-ED3C-416B-B01E-1FF7EE009EA4}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Geip", "Services\Geip\Geip.csproj", "{23b1d5ea-92c1-4181-9023-ae7400b70586}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Csms", "Services\Csms\Csms.csproj", "{e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Organizations", "Services\Organizations\Organizations.csproj", "{b5175f42-1803-b19d-c5cc-b1c5514b815c}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lts", "Services\Lts\Lts.csproj", "{00dd2678-7092-4cf6-999d-0f0a388380af}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kafka", "Services\Kafka\Kafka.csproj", "{1635d3a9-f723-4184-8328-018a761bb661}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mpc", "Services\Mpc\Mpc.csproj", "{c3aaea74-f41e-4c56-b64e-7a2496ff6562}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Frs", "Services\Frs\Frs.csproj", "{6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Eip", "Services\Eip\Eip.csproj", "{23b1d5ea-92c1-4181-9023-ae7400b70586}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CloudRtc", "Services\CloudRtc\CloudRtc.csproj", "{59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ims", "Services\Ims\Ims.csproj", "{5B7BFA6B-B85E-4222-8988-16CCF9558393}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ces", "Services\Ces\Ces.csproj", "{E2E79C4D-9E38-443B-BF8B-83C087271443}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Eps", "Services\Eps\Eps.csproj", "{F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kps", "Services\Kps\Kps.csproj", "{13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cce", "Services\Cce\Cce.csproj", "{a4aaea74-f41e-4c56-b64e-7a2496ff4351}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dbss", "Services\Dbss\Dbss.csproj", "{0137ded9-5bc8-225e-64fc-40bf5d3fb59a}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ocr", "Services\Ocr\Ocr.csproj", "{12cf972d-1c2b-80a1-33cc-056e6677ea5c}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kms", "Services\Kms\Kms.csproj", "{ECB1152B-9F28-414F-B3E8-B596E421779B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Drs", "Services\Drs\Drs.csproj", "{3b6da37f-829b-a36b-0ea5-75d979c938e3}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aad", "Services\Aad\Aad.csproj", "{6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GaussDBforNoSQL", "Services\GaussDBforNoSQL\GaussDBforNoSQL.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IoTDA", "Services\IoTDA\IoTDA.csproj", "{12F2C43A-6FAA-437E-9DAB-6CE8640A524A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ram", "Services\Ram\Ram.csproj", "{3dbd55e0-4b6b-03fe-f82f-961c2fc28386}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dcs", "Services\Dcs\Dcs.csproj", "{c66dd549-8ef4-48f1-a85b-eaffaa736cee}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Live", "Services\Live\Live.csproj", "{728A1394-22BB-4889-AAF7-037CD1EF431A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Evs", "Services\Evs\Evs.csproj", "{B6D999F9-9335-433F-BCD2-1E07409AFA39}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cfw", "Services\Cfw\Cfw.csproj", "{C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Classroom", "Services\Classroom\Classroom.csproj", "{D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nat", "Services\Nat\Nat.csproj", "{96f50236-7030-47ab-af32-bb76484fad1c}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aos", "Services\Aos\Aos.csproj", "{00dd2678-7092-4cf6-999d-0f0a388380ac}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cts", "Services\Cts\Cts.csproj", "{e8bfe266-7dcb-417d-b714-925b4bb3bd89}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rds", "Services\Rds\Rds.csproj", "{ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RocketMQ", "Services\RocketMQ\RocketMQ.csproj", "{defe4a95-5592-47cc-8dee-9810e0da0ba0}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Smn", "Services\Smn\Smn.csproj", "{9e4cf877-53e0-4d2f-b351-e27bd8d907c1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ecs", "Services\Ecs\Ecs.csproj", "{c3aaea74-f41e-4c56-b64e-7a2496ff6551}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ivs", "Services\Ivs\Ivs.csproj", "{1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -148,54 +148,42 @@ Global HideSolutionNode = FALSE EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|x64.ActiveCfg = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|x64.Build.0 = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|x86.ActiveCfg = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Debug|x86.Build.0 = Debug|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|Any CPU.Build.0 = Release|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|x64.ActiveCfg = Release|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|x64.Build.0 = Release|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|x86.ActiveCfg = Release|Any CPU - {0E6FE156-B812-48EB-A1E1-12C17254DF8A}.Release|x86.Build.0 = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x64.ActiveCfg = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x64.Build.0 = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x86.ActiveCfg = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x86.Build.0 = Debug|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|Any CPU.Build.0 = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x64.ActiveCfg = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x64.Build.0 = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x86.ActiveCfg = Release|Any CPU - {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x86.Build.0 = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x64.ActiveCfg = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x64.Build.0 = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x86.ActiveCfg = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x86.Build.0 = Debug|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|Any CPU.Build.0 = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x64.ActiveCfg = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x64.Build.0 = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x86.ActiveCfg = Release|Any CPU - {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x86.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.Build.0 = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|x64.ActiveCfg = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|x64.Build.0 = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|x86.ActiveCfg = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Debug|x86.Build.0 = Debug|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|Any CPU.Build.0 = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|x64.ActiveCfg = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|x64.Build.0 = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|x86.ActiveCfg = Release|Any CPU + {0D9616E4-184B-42E1-9C0E-C91CAA98A547}.Release|x86.Build.0 = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|Any CPU.Build.0 = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x64.ActiveCfg = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x64.Build.0 = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x86.ActiveCfg = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x86.Build.0 = Debug|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|Any CPU.ActiveCfg = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|Any CPU.Build.0 = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x64.ActiveCfg = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x64.Build.0 = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x86.ActiveCfg = Release|Any CPU + {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x86.Build.0 = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x64.ActiveCfg = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x64.Build.0 = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x86.ActiveCfg = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x86.Build.0 = Debug|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|Any CPU.ActiveCfg = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|Any CPU.Build.0 = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x64.ActiveCfg = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x64.Build.0 = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x86.ActiveCfg = Release|Any CPU + {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x86.Build.0 = Release|Any CPU {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|Any CPU.Build.0 = Debug|Any CPU {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -208,54 +196,6 @@ Global {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x64.Build.0 = Release|Any CPU {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x86.ActiveCfg = Release|Any CPU {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x86.Build.0 = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|Any CPU.Build.0 = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x64.ActiveCfg = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x64.Build.0 = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x86.ActiveCfg = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x86.Build.0 = Debug|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|Any CPU.ActiveCfg = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|Any CPU.Build.0 = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x64.ActiveCfg = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x64.Build.0 = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x86.ActiveCfg = Release|Any CPU - {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x86.Build.0 = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x64.ActiveCfg = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x64.Build.0 = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x86.ActiveCfg = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x86.Build.0 = Debug|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|Any CPU.Build.0 = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x64.ActiveCfg = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x64.Build.0 = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x86.ActiveCfg = Release|Any CPU - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x86.Build.0 = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|Any CPU.Build.0 = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x64.ActiveCfg = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x64.Build.0 = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x86.ActiveCfg = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x86.Build.0 = Debug|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|Any CPU.ActiveCfg = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|Any CPU.Build.0 = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x64.ActiveCfg = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x64.Build.0 = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x86.ActiveCfg = Release|Any CPU - {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x86.Build.0 = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|Any CPU.Build.0 = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|x64.ActiveCfg = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|x64.Build.0 = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|x86.ActiveCfg = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Debug|x86.Build.0 = Debug|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|Any CPU.ActiveCfg = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|Any CPU.Build.0 = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|x64.ActiveCfg = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|x64.Build.0 = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|x86.ActiveCfg = Release|Any CPU - {19056dcc-ac24-455a-a682-13cd1f3f833f}.Release|x86.Build.0 = Release|Any CPU {456c6dc7-f610-410e-85a1-189ba73f1e43}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {456c6dc7-f610-410e-85a1-189ba73f1e43}.Debug|Any CPU.Build.0 = Debug|Any CPU {456c6dc7-f610-410e-85a1-189ba73f1e43}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -268,78 +208,30 @@ Global {456c6dc7-f610-410e-85a1-189ba73f1e43}.Release|x64.Build.0 = Release|Any CPU {456c6dc7-f610-410e-85a1-189ba73f1e43}.Release|x86.ActiveCfg = Release|Any CPU {456c6dc7-f610-410e-85a1-189ba73f1e43}.Release|x86.Build.0 = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|Any CPU.Build.0 = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x64.ActiveCfg = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x64.Build.0 = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x86.ActiveCfg = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x86.Build.0 = Debug|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|Any CPU.ActiveCfg = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|Any CPU.Build.0 = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x64.ActiveCfg = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x64.Build.0 = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x86.ActiveCfg = Release|Any CPU - {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x86.Build.0 = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x64.ActiveCfg = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x64.Build.0 = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x86.ActiveCfg = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x86.Build.0 = Debug|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|Any CPU.Build.0 = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x64.ActiveCfg = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x64.Build.0 = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x86.ActiveCfg = Release|Any CPU - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x86.Build.0 = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|Any CPU.Build.0 = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x64.ActiveCfg = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x64.Build.0 = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x86.ActiveCfg = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Debug|x86.Build.0 = Debug|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|Any CPU.ActiveCfg = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|Any CPU.Build.0 = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x64.ActiveCfg = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x64.Build.0 = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x86.ActiveCfg = Release|Any CPU - {e8d81a83-6722-4338-b788-f22e76c31a50}.Release|x86.Build.0 = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x64.ActiveCfg = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x64.Build.0 = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x86.ActiveCfg = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x86.Build.0 = Debug|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|Any CPU.ActiveCfg = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|Any CPU.Build.0 = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x64.ActiveCfg = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x64.Build.0 = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x86.ActiveCfg = Release|Any CPU - {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x86.Build.0 = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|Any CPU.Build.0 = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|x64.ActiveCfg = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|x64.Build.0 = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|x86.ActiveCfg = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Debug|x86.Build.0 = Debug|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|Any CPU.ActiveCfg = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|Any CPU.Build.0 = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|x64.ActiveCfg = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|x64.Build.0 = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|x86.ActiveCfg = Release|Any CPU - {96f50236-7030-47ab-af32-bb76484fadec}.Release|x86.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.Build.0 = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x64.ActiveCfg = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x64.Build.0 = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x86.ActiveCfg = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x86.Build.0 = Debug|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|Any CPU.ActiveCfg = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|Any CPU.Build.0 = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x64.ActiveCfg = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x64.Build.0 = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x86.ActiveCfg = Release|Any CPU + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x86.Build.0 = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x64.ActiveCfg = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x64.Build.0 = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x86.ActiveCfg = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x86.Build.0 = Debug|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|Any CPU.Build.0 = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x64.ActiveCfg = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x64.Build.0 = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x86.ActiveCfg = Release|Any CPU + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x86.Build.0 = Release|Any CPU {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Debug|Any CPU.Build.0 = Debug|Any CPU {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -352,54 +244,114 @@ Global {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Release|x64.Build.0 = Release|Any CPU {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Release|x86.ActiveCfg = Release|Any CPU {d3bbfb85-g52f-5d67-c75f-8b3507gg7662}.Release|x86.Build.0 = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|Any CPU.Build.0 = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x64.ActiveCfg = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x64.Build.0 = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x86.ActiveCfg = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x86.Build.0 = Debug|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|Any CPU.ActiveCfg = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|Any CPU.Build.0 = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x64.ActiveCfg = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x64.Build.0 = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x86.ActiveCfg = Release|Any CPU - {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x86.Build.0 = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x64.ActiveCfg = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x64.Build.0 = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x86.ActiveCfg = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x86.Build.0 = Debug|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|Any CPU.Build.0 = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x64.ActiveCfg = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x64.Build.0 = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x86.ActiveCfg = Release|Any CPU - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x86.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|Any CPU.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x64.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x64.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x86.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x86.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|Any CPU.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|Any CPU.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x64.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x64.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x86.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x86.Build.0 = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x64.ActiveCfg = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x64.Build.0 = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x86.ActiveCfg = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x86.Build.0 = Debug|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|Any CPU.Build.0 = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x64.ActiveCfg = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x64.Build.0 = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x86.ActiveCfg = Release|Any CPU - {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x86.Build.0 = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x64.ActiveCfg = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x64.Build.0 = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x86.ActiveCfg = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Debug|x86.Build.0 = Debug|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|Any CPU.Build.0 = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x64.ActiveCfg = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x64.Build.0 = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x86.ActiveCfg = Release|Any CPU + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f}.Release|x86.Build.0 = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|Any CPU.Build.0 = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x64.ActiveCfg = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x64.Build.0 = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x86.ActiveCfg = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x86.Build.0 = Debug|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|Any CPU.ActiveCfg = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|Any CPU.Build.0 = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x64.ActiveCfg = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x64.Build.0 = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x86.ActiveCfg = Release|Any CPU + {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x86.Build.0 = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x64.ActiveCfg = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x64.Build.0 = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x86.ActiveCfg = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x86.Build.0 = Debug|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|Any CPU.Build.0 = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x64.ActiveCfg = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x64.Build.0 = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x86.ActiveCfg = Release|Any CPU + {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x86.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|Any CPU.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x64.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x64.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x86.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x86.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|Any CPU.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|Any CPU.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x64.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x64.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x86.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x86.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.Build.0 = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x64.ActiveCfg = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x64.Build.0 = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x86.ActiveCfg = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x86.Build.0 = Debug|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|Any CPU.Build.0 = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x64.ActiveCfg = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x64.Build.0 = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x86.ActiveCfg = Release|Any CPU + {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x86.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x64.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x64.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x86.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x86.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|Any CPU.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|Any CPU.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x64.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x64.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x86.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x86.Build.0 = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x64.ActiveCfg = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x64.Build.0 = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x86.ActiveCfg = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x86.Build.0 = Debug|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|Any CPU.Build.0 = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x64.ActiveCfg = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x64.Build.0 = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x86.ActiveCfg = Release|Any CPU + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x86.Build.0 = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x64.ActiveCfg = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x64.Build.0 = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x86.ActiveCfg = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Debug|x86.Build.0 = Debug|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|Any CPU.Build.0 = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x64.ActiveCfg = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x64.Build.0 = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x86.ActiveCfg = Release|Any CPU + {3172c815-5fea-43e0-9589-8ab6f4af2866}.Release|x86.Build.0 = Release|Any CPU {518fb927-ab1a-5842-3e93-5eed07ab0023}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {518fb927-ab1a-5842-3e93-5eed07ab0023}.Debug|Any CPU.Build.0 = Debug|Any CPU {518fb927-ab1a-5842-3e93-5eed07ab0023}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -412,18 +364,18 @@ Global {518fb927-ab1a-5842-3e93-5eed07ab0023}.Release|x64.Build.0 = Release|Any CPU {518fb927-ab1a-5842-3e93-5eed07ab0023}.Release|x86.ActiveCfg = Release|Any CPU {518fb927-ab1a-5842-3e93-5eed07ab0023}.Release|x86.Build.0 = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|x64.ActiveCfg = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|x64.Build.0 = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|x86.ActiveCfg = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Debug|x86.Build.0 = Debug|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|Any CPU.Build.0 = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x64.ActiveCfg = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x64.Build.0 = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x86.ActiveCfg = Release|Any CPU - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A}.Release|x86.Build.0 = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x64.ActiveCfg = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x64.Build.0 = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x86.ActiveCfg = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x86.Build.0 = Debug|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|Any CPU.ActiveCfg = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|Any CPU.Build.0 = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x64.ActiveCfg = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x64.Build.0 = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x86.ActiveCfg = Release|Any CPU + {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x86.Build.0 = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|Any CPU.Build.0 = Debug|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -436,258 +388,6 @@ Global {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x64.Build.0 = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x86.ActiveCfg = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x86.Build.0 = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|Any CPU.Build.0 = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x64.ActiveCfg = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x64.Build.0 = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x86.ActiveCfg = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x86.Build.0 = Debug|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|Any CPU.ActiveCfg = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|Any CPU.Build.0 = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x64.ActiveCfg = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x64.Build.0 = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x86.ActiveCfg = Release|Any CPU - {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x86.Build.0 = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.ActiveCfg = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.Build.0 = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.ActiveCfg = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.Build.0 = Debug|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.ActiveCfg = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.Build.0 = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.ActiveCfg = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.Build.0 = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.ActiveCfg = Release|Any CPU - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|Any CPU.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x64.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x64.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x86.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x86.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|Any CPU.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|Any CPU.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x64.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x64.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x86.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x86.Build.0 = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x64.ActiveCfg = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x64.Build.0 = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x86.ActiveCfg = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x86.Build.0 = Debug|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|Any CPU.Build.0 = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x64.ActiveCfg = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x64.Build.0 = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x86.ActiveCfg = Release|Any CPU - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x86.Build.0 = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x64.ActiveCfg = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x64.Build.0 = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x86.ActiveCfg = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x86.Build.0 = Debug|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|Any CPU.Build.0 = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x64.ActiveCfg = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x64.Build.0 = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x86.ActiveCfg = Release|Any CPU - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x86.Build.0 = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x64.ActiveCfg = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x64.Build.0 = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x86.ActiveCfg = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x86.Build.0 = Debug|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|Any CPU.Build.0 = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x64.ActiveCfg = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x64.Build.0 = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x86.ActiveCfg = Release|Any CPU - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x86.Build.0 = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x64.ActiveCfg = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x64.Build.0 = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x86.ActiveCfg = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x86.Build.0 = Debug|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|Any CPU.Build.0 = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x64.ActiveCfg = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x64.Build.0 = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x86.ActiveCfg = Release|Any CPU - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x86.Build.0 = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x64.ActiveCfg = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x64.Build.0 = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x86.ActiveCfg = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Debug|x86.Build.0 = Debug|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|Any CPU.Build.0 = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x64.ActiveCfg = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x64.Build.0 = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x86.ActiveCfg = Release|Any CPU - {0cd2eacf-3743-4b4c-9543-6362a4030dde}.Release|x86.Build.0 = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x64.ActiveCfg = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x64.Build.0 = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x86.ActiveCfg = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x86.Build.0 = Debug|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|Any CPU.Build.0 = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x64.ActiveCfg = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x64.Build.0 = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x86.ActiveCfg = Release|Any CPU - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x86.Build.0 = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|Any CPU.Build.0 = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x64.ActiveCfg = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x64.Build.0 = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x86.ActiveCfg = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x86.Build.0 = Debug|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|Any CPU.ActiveCfg = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|Any CPU.Build.0 = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x64.ActiveCfg = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x64.Build.0 = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x86.ActiveCfg = Release|Any CPU - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x86.Build.0 = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x64.ActiveCfg = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x64.Build.0 = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x86.ActiveCfg = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x86.Build.0 = Debug|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|Any CPU.Build.0 = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x64.ActiveCfg = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x64.Build.0 = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x86.ActiveCfg = Release|Any CPU - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x86.Build.0 = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|Any CPU.Build.0 = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x64.ActiveCfg = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x64.Build.0 = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x86.ActiveCfg = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Debug|x86.Build.0 = Debug|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|Any CPU.ActiveCfg = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|Any CPU.Build.0 = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x64.ActiveCfg = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x64.Build.0 = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x86.ActiveCfg = Release|Any CPU - {535cfc94-6d5b-4da2-bbbd-e9faa9014012}.Release|x86.Build.0 = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|Any CPU.Build.0 = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x64.ActiveCfg = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x64.Build.0 = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x86.ActiveCfg = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x86.Build.0 = Debug|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|Any CPU.ActiveCfg = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|Any CPU.Build.0 = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x64.ActiveCfg = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x64.Build.0 = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x86.ActiveCfg = Release|Any CPU - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x86.Build.0 = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x64.ActiveCfg = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x64.Build.0 = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x86.ActiveCfg = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Debug|x86.Build.0 = Debug|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|Any CPU.Build.0 = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x64.ActiveCfg = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x64.Build.0 = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x86.ActiveCfg = Release|Any CPU - {09E55113-08BD-46BC-B5A3-6440F4410AC8}.Release|x86.Build.0 = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|Any CPU.Build.0 = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x64.ActiveCfg = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x64.Build.0 = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x86.ActiveCfg = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x86.Build.0 = Debug|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|Any CPU.ActiveCfg = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|Any CPU.Build.0 = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x64.ActiveCfg = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x64.Build.0 = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x86.ActiveCfg = Release|Any CPU - {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x86.Build.0 = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x64.ActiveCfg = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x64.Build.0 = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x86.ActiveCfg = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x86.Build.0 = Debug|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|Any CPU.Build.0 = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x64.ActiveCfg = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x64.Build.0 = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x86.ActiveCfg = Release|Any CPU - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x86.Build.0 = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x64.ActiveCfg = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x64.Build.0 = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x86.ActiveCfg = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x86.Build.0 = Debug|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|Any CPU.Build.0 = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|x64.ActiveCfg = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|x64.Build.0 = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|x86.ActiveCfg = Release|Any CPU - {1635d3a9-f723-4184-8328-018a761bb661}.Release|x86.Build.0 = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x64.ActiveCfg = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x64.Build.0 = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x86.ActiveCfg = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x86.Build.0 = Debug|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|Any CPU.Build.0 = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x64.ActiveCfg = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x64.Build.0 = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x86.ActiveCfg = Release|Any CPU - {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x86.Build.0 = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|Any CPU.Build.0 = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x64.ActiveCfg = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x64.Build.0 = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x86.ActiveCfg = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x86.Build.0 = Debug|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|Any CPU.ActiveCfg = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|Any CPU.Build.0 = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x64.ActiveCfg = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x64.Build.0 = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x86.ActiveCfg = Release|Any CPU - {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x86.Build.0 = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x64.ActiveCfg = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x64.Build.0 = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x86.ActiveCfg = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x86.Build.0 = Debug|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|Any CPU.Build.0 = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x64.ActiveCfg = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x64.Build.0 = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x86.ActiveCfg = Release|Any CPU - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x86.Build.0 = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x64.ActiveCfg = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x64.Build.0 = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x86.ActiveCfg = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Debug|x86.Build.0 = Debug|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|Any CPU.Build.0 = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x64.ActiveCfg = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x64.Build.0 = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x86.ActiveCfg = Release|Any CPU - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A}.Release|x86.Build.0 = Release|Any CPU {2763ec40-c4dd-11ea-87d0-0242ac130003}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {2763ec40-c4dd-11ea-87d0-0242ac130003}.Debug|Any CPU.Build.0 = Debug|Any CPU {2763ec40-c4dd-11ea-87d0-0242ac130003}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -700,18 +400,18 @@ Global {2763ec40-c4dd-11ea-87d0-0242ac130003}.Release|x64.Build.0 = Release|Any CPU {2763ec40-c4dd-11ea-87d0-0242ac130003}.Release|x86.ActiveCfg = Release|Any CPU {2763ec40-c4dd-11ea-87d0-0242ac130003}.Release|x86.Build.0 = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x64.ActiveCfg = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x64.Build.0 = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x86.ActiveCfg = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x86.Build.0 = Debug|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|Any CPU.Build.0 = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x64.ActiveCfg = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x64.Build.0 = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x86.ActiveCfg = Release|Any CPU - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x86.Build.0 = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x64.ActiveCfg = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x64.Build.0 = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x86.ActiveCfg = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Debug|x86.Build.0 = Debug|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|Any CPU.Build.0 = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x64.ActiveCfg = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x64.Build.0 = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x86.ActiveCfg = Release|Any CPU + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb}.Release|x86.Build.0 = Release|Any CPU {D9FEA963-ED3C-416B-B01E-1FF7EE009EA4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D9FEA963-ED3C-416B-B01E-1FF7EE009EA4}.Debug|Any CPU.Build.0 = Debug|Any CPU {D9FEA963-ED3C-416B-B01E-1FF7EE009EA4}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -736,54 +436,18 @@ Global {e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d}.Release|x64.Build.0 = Release|Any CPU {e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d}.Release|x86.ActiveCfg = Release|Any CPU {e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d}.Release|x86.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|Any CPU.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x64.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x64.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x86.ActiveCfg = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Debug|x86.Build.0 = Debug|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|Any CPU.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|Any CPU.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x64.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x64.Build.0 = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x86.ActiveCfg = Release|Any CPU - {00dd2678-7092-4cf6-999d-0f0a388380af}.Release|x86.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|Any CPU.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x64.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x64.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x86.ActiveCfg = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Debug|x86.Build.0 = Debug|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|Any CPU.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|Any CPU.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x64.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x64.Build.0 = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x86.ActiveCfg = Release|Any CPU - {c3aaea74-f41e-4c56-b64e-7a2496ff6562}.Release|x86.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.ActiveCfg = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.Build.0 = Debug|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.Build.0 = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.ActiveCfg = Release|Any CPU - {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.Build.0 = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x64.ActiveCfg = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x64.Build.0 = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x86.ActiveCfg = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Debug|x86.Build.0 = Debug|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|Any CPU.Build.0 = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x64.ActiveCfg = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x64.Build.0 = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x86.ActiveCfg = Release|Any CPU - {5B7BFA6B-B85E-4222-8988-16CCF9558393}.Release|x86.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.Build.0 = Release|Any CPU {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Debug|Any CPU.Build.0 = Debug|Any CPU {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -796,42 +460,42 @@ Global {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Release|x64.Build.0 = Release|Any CPU {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Release|x86.ActiveCfg = Release|Any CPU {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A}.Release|x86.Build.0 = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x64.ActiveCfg = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x64.Build.0 = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x86.ActiveCfg = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x86.Build.0 = Debug|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|Any CPU.Build.0 = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x64.ActiveCfg = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x64.Build.0 = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x86.ActiveCfg = Release|Any CPU - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x86.Build.0 = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|Any CPU.Build.0 = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x64.ActiveCfg = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x64.Build.0 = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x86.ActiveCfg = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Debug|x86.Build.0 = Debug|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|Any CPU.ActiveCfg = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|Any CPU.Build.0 = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x64.ActiveCfg = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x64.Build.0 = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x86.ActiveCfg = Release|Any CPU - {12cf972d-1c2b-80a1-33cc-056e6677ea5c}.Release|x86.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.ActiveCfg = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.Build.0 = Debug|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.Build.0 = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.ActiveCfg = Release|Any CPU - {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.Build.0 = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x64.ActiveCfg = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x64.Build.0 = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x86.ActiveCfg = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Debug|x86.Build.0 = Debug|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|Any CPU.Build.0 = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x64.ActiveCfg = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x64.Build.0 = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x86.ActiveCfg = Release|Any CPU + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A}.Release|x86.Build.0 = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x64.ActiveCfg = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x64.Build.0 = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x86.ActiveCfg = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Debug|x86.Build.0 = Debug|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|Any CPU.Build.0 = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x64.ActiveCfg = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x64.Build.0 = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x86.ActiveCfg = Release|Any CPU + {ec1125a1-e08d-4545-a8d0-c9787c86755c}.Release|x86.Build.0 = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x64.ActiveCfg = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x64.Build.0 = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x86.ActiveCfg = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Debug|x86.Build.0 = Debug|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|Any CPU.ActiveCfg = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|Any CPU.Build.0 = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x64.ActiveCfg = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x64.Build.0 = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x86.ActiveCfg = Release|Any CPU + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e}.Release|x86.Build.0 = Release|Any CPU {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.Build.0 = Debug|Any CPU {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -844,42 +508,18 @@ Global {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.Build.0 = Release|Any CPU {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.ActiveCfg = Release|Any CPU {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.Build.0 = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x64.ActiveCfg = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x64.Build.0 = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x86.ActiveCfg = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Debug|x86.Build.0 = Debug|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|Any CPU.Build.0 = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x64.ActiveCfg = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x64.Build.0 = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x86.ActiveCfg = Release|Any CPU - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386}.Release|x86.Build.0 = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|Any CPU.Build.0 = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x64.ActiveCfg = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x64.Build.0 = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x86.ActiveCfg = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x86.Build.0 = Debug|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|Any CPU.ActiveCfg = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|Any CPU.Build.0 = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x64.ActiveCfg = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x64.Build.0 = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x86.ActiveCfg = Release|Any CPU - {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x86.Build.0 = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x64.ActiveCfg = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x64.Build.0 = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x86.ActiveCfg = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Debug|x86.Build.0 = Debug|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|Any CPU.Build.0 = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x64.ActiveCfg = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x64.Build.0 = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x86.ActiveCfg = Release|Any CPU - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212}.Release|x86.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.Build.0 = Release|Any CPU {96f50236-7030-47ab-af32-bb76484fad1c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {96f50236-7030-47ab-af32-bb76484fad1c}.Debug|Any CPU.Build.0 = Debug|Any CPU {96f50236-7030-47ab-af32-bb76484fad1c}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -892,18 +532,42 @@ Global {96f50236-7030-47ab-af32-bb76484fad1c}.Release|x64.Build.0 = Release|Any CPU {96f50236-7030-47ab-af32-bb76484fad1c}.Release|x86.ActiveCfg = Release|Any CPU {96f50236-7030-47ab-af32-bb76484fad1c}.Release|x86.Build.0 = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|Any CPU.Build.0 = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x64.ActiveCfg = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x64.Build.0 = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x86.ActiveCfg = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x86.Build.0 = Debug|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|Any CPU.ActiveCfg = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|Any CPU.Build.0 = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x64.ActiveCfg = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x64.Build.0 = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x86.ActiveCfg = Release|Any CPU - {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x86.Build.0 = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x64.ActiveCfg = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x64.Build.0 = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x86.ActiveCfg = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Debug|x86.Build.0 = Debug|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|Any CPU.ActiveCfg = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|Any CPU.Build.0 = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x64.ActiveCfg = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x64.Build.0 = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x86.ActiveCfg = Release|Any CPU + {e4b6779e-2b75-492b-a149-7bc5a58e9469}.Release|x86.Build.0 = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x64.ActiveCfg = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x64.Build.0 = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x86.ActiveCfg = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Debug|x86.Build.0 = Debug|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|Any CPU.Build.0 = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x64.ActiveCfg = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x64.Build.0 = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x86.ActiveCfg = Release|Any CPU + {545A5E74-C543-429F-A2EF-1D39572628EE}.Release|x86.Build.0 = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|Any CPU.Build.0 = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x64.ActiveCfg = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x64.Build.0 = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x86.ActiveCfg = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Debug|x86.Build.0 = Debug|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|Any CPU.ActiveCfg = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|Any CPU.Build.0 = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x64.ActiveCfg = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x64.Build.0 = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x86.ActiveCfg = Release|Any CPU + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e}.Release|x86.Build.0 = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|Any CPU.Build.0 = Debug|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -916,66 +580,414 @@ Global {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x64.Build.0 = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x86.ActiveCfg = Release|Any CPU {defe4a95-5592-47cc-8dee-9810e0da0ba0}.Release|x86.Build.0 = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x64.ActiveCfg = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x64.Build.0 = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x86.ActiveCfg = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Debug|x86.Build.0 = Debug|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|Any CPU.Build.0 = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x64.ActiveCfg = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x64.Build.0 = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x86.ActiveCfg = Release|Any CPU + {728A1394-22BB-4889-AAF7-037CD1EF431A}.Release|x86.Build.0 = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|x64.ActiveCfg = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|x64.Build.0 = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|x86.ActiveCfg = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Debug|x86.Build.0 = Debug|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|Any CPU.Build.0 = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|x64.ActiveCfg = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|x64.Build.0 = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|x86.ActiveCfg = Release|Any CPU + {F964968D-5065-428A-A770-F3164C79769D}.Release|x86.Build.0 = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x64.ActiveCfg = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x64.Build.0 = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x86.ActiveCfg = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Debug|x86.Build.0 = Debug|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|Any CPU.ActiveCfg = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|Any CPU.Build.0 = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x64.ActiveCfg = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x64.Build.0 = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x86.ActiveCfg = Release|Any CPU + {e8a48cd8-ef7c-4188-8ddf-644f38d61441}.Release|x86.Build.0 = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|Any CPU.Build.0 = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|x64.ActiveCfg = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|x64.Build.0 = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|x86.ActiveCfg = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Debug|x86.Build.0 = Debug|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|Any CPU.ActiveCfg = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|Any CPU.Build.0 = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|x64.ActiveCfg = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|x64.Build.0 = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|x86.ActiveCfg = Release|Any CPU + {22C78414-DF3E-45C0-8A88-0458C33F765F}.Release|x86.Build.0 = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|Any CPU.Build.0 = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x64.ActiveCfg = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x64.Build.0 = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x86.ActiveCfg = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Debug|x86.Build.0 = Debug|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|Any CPU.ActiveCfg = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|Any CPU.Build.0 = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x64.ActiveCfg = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x64.Build.0 = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x86.ActiveCfg = Release|Any CPU + {e8bfe266-7dcb-417d-b714-925b4bb3bd89}.Release|x86.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x64.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.ActiveCfg = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Debug|x86.Build.0 = Debug|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|Any CPU.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x64.Build.0 = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.ActiveCfg = Release|Any CPU + {3b6da37f-829b-a36b-0ea5-75d979c938e3}.Release|x86.Build.0 = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|x64.ActiveCfg = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|x64.Build.0 = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|x86.ActiveCfg = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Debug|x86.Build.0 = Debug|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|Any CPU.Build.0 = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|x64.ActiveCfg = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|x64.Build.0 = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|x86.ActiveCfg = Release|Any CPU + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A}.Release|x86.Build.0 = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|Any CPU.Build.0 = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x64.ActiveCfg = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x64.Build.0 = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x86.ActiveCfg = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Debug|x86.Build.0 = Debug|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|Any CPU.ActiveCfg = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|Any CPU.Build.0 = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x64.ActiveCfg = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x64.Build.0 = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x86.ActiveCfg = Release|Any CPU + {f77fb0de-9056-11eb-8219-f26d2774ac7a}.Release|x86.Build.0 = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x64.ActiveCfg = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x64.Build.0 = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x86.ActiveCfg = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Debug|x86.Build.0 = Debug|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|Any CPU.Build.0 = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x64.ActiveCfg = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x64.Build.0 = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x86.ActiveCfg = Release|Any CPU + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64}.Release|x86.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|Any CPU.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x64.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.ActiveCfg = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Debug|x86.Build.0 = Debug|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|Any CPU.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x64.Build.0 = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.ActiveCfg = Release|Any CPU + {23b1d5ea-92c1-4181-9023-ae7400b70586}.Release|x86.Build.0 = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|Any CPU.Build.0 = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x64.ActiveCfg = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x64.Build.0 = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x86.ActiveCfg = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Debug|x86.Build.0 = Debug|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|Any CPU.ActiveCfg = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|Any CPU.Build.0 = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x64.ActiveCfg = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x64.Build.0 = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x86.ActiveCfg = Release|Any CPU + {b5175f42-1803-b19d-c5cc-b1c5514b815c}.Release|x86.Build.0 = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x64.ActiveCfg = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x64.Build.0 = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x86.ActiveCfg = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Debug|x86.Build.0 = Debug|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|Any CPU.Build.0 = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|x64.ActiveCfg = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|x64.Build.0 = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|x86.ActiveCfg = Release|Any CPU + {1635d3a9-f723-4184-8328-018a761bb661}.Release|x86.Build.0 = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x64.ActiveCfg = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x64.Build.0 = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x86.ActiveCfg = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Debug|x86.Build.0 = Debug|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|Any CPU.Build.0 = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x64.ActiveCfg = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x64.Build.0 = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x86.ActiveCfg = Release|Any CPU + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD}.Release|x86.Build.0 = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x64.ActiveCfg = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x64.Build.0 = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x86.ActiveCfg = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Debug|x86.Build.0 = Debug|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|Any CPU.Build.0 = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x64.ActiveCfg = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x64.Build.0 = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x86.ActiveCfg = Release|Any CPU + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF}.Release|x86.Build.0 = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x64.ActiveCfg = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x64.Build.0 = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x86.ActiveCfg = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Debug|x86.Build.0 = Debug|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|Any CPU.Build.0 = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x64.ActiveCfg = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x64.Build.0 = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x86.ActiveCfg = Release|Any CPU + {E2E79C4D-9E38-443B-BF8B-83C087271443}.Release|x86.Build.0 = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x64.ActiveCfg = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x64.Build.0 = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x86.ActiveCfg = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Debug|x86.Build.0 = Debug|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|Any CPU.Build.0 = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x64.ActiveCfg = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x64.Build.0 = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x86.ActiveCfg = Release|Any CPU + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0}.Release|x86.Build.0 = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|Any CPU.Build.0 = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x64.ActiveCfg = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x64.Build.0 = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x86.ActiveCfg = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Debug|x86.Build.0 = Debug|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|Any CPU.ActiveCfg = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|Any CPU.Build.0 = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x64.ActiveCfg = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x64.Build.0 = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x86.ActiveCfg = Release|Any CPU + {a4aaea74-f41e-4c56-b64e-7a2496ff4351}.Release|x86.Build.0 = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x64.ActiveCfg = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x64.Build.0 = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x86.ActiveCfg = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Debug|x86.Build.0 = Debug|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|Any CPU.Build.0 = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x64.ActiveCfg = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x64.Build.0 = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x86.ActiveCfg = Release|Any CPU + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a}.Release|x86.Build.0 = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x64.ActiveCfg = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x64.Build.0 = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x86.ActiveCfg = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Debug|x86.Build.0 = Debug|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|Any CPU.Build.0 = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x64.ActiveCfg = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x64.Build.0 = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x86.ActiveCfg = Release|Any CPU + {ECB1152B-9F28-414F-B3E8-B596E421779B}.Release|x86.Build.0 = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x64.ActiveCfg = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x64.Build.0 = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x86.ActiveCfg = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Debug|x86.Build.0 = Debug|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|Any CPU.Build.0 = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x64.ActiveCfg = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x64.Build.0 = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x86.ActiveCfg = Release|Any CPU + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5}.Release|x86.Build.0 = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x64.ActiveCfg = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x64.Build.0 = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x86.ActiveCfg = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Debug|x86.Build.0 = Debug|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|Any CPU.Build.0 = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x64.ActiveCfg = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x64.Build.0 = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x86.ActiveCfg = Release|Any CPU + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A}.Release|x86.Build.0 = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x64.ActiveCfg = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x64.Build.0 = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x86.ActiveCfg = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Debug|x86.Build.0 = Debug|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|Any CPU.ActiveCfg = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|Any CPU.Build.0 = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x64.ActiveCfg = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x64.Build.0 = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x86.ActiveCfg = Release|Any CPU + {c66dd549-8ef4-48f1-a85b-eaffaa736cee}.Release|x86.Build.0 = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x64.ActiveCfg = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x64.Build.0 = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x86.ActiveCfg = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Debug|x86.Build.0 = Debug|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|Any CPU.Build.0 = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x64.ActiveCfg = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x64.Build.0 = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x86.ActiveCfg = Release|Any CPU + {B6D999F9-9335-433F-BCD2-1E07409AFA39}.Release|x86.Build.0 = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x64.ActiveCfg = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x64.Build.0 = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x86.ActiveCfg = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Debug|x86.Build.0 = Debug|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|Any CPU.Build.0 = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x64.ActiveCfg = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x64.Build.0 = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x86.ActiveCfg = Release|Any CPU + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5}.Release|x86.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|Any CPU.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x64.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x64.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x86.ActiveCfg = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Debug|x86.Build.0 = Debug|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|Any CPU.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|Any CPU.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x64.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x64.Build.0 = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x86.ActiveCfg = Release|Any CPU + {00dd2678-7092-4cf6-999d-0f0a388380ac}.Release|x86.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x64.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.ActiveCfg = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Debug|x86.Build.0 = Debug|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|Any CPU.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x64.Build.0 = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.ActiveCfg = Release|Any CPU + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2}.Release|x86.Build.0 = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x64.ActiveCfg = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x64.Build.0 = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x86.ActiveCfg = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Debug|x86.Build.0 = Debug|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|Any CPU.Build.0 = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x64.ActiveCfg = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x64.Build.0 = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x86.ActiveCfg = Release|Any CPU + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1}.Release|x86.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|Any CPU.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x64.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x64.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x86.ActiveCfg = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Debug|x86.Build.0 = Debug|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|Any CPU.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|Any CPU.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x64.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x64.Build.0 = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x86.ActiveCfg = Release|Any CPU + {c3aaea74-f41e-4c56-b64e-7a2496ff6551}.Release|x86.Build.0 = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x64.ActiveCfg = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x64.Build.0 = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x86.ActiveCfg = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Debug|x86.Build.0 = Debug|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|Any CPU.Build.0 = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x64.ActiveCfg = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x64.Build.0 = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x86.ActiveCfg = Release|Any CPU + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(NestedProjects) = preSolution - {545A5E74-C543-429F-A2EF-1D39572628EE} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {3172c815-5fea-43e0-9589-8ab6f4af2866} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {23b1d5ea-92c1-4181-9023-ae7400b70586} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {38F2C59A-6FAA-498E-9DAB-6CE2640A539A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {c66dd549-8ef4-48f1-a85b-eaffaa736cee} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {2f67a6e0-a581-11ee-9380-fa163e9f5a2f} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {E2E79C4D-9E38-443B-BF8B-83C087271443} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {19056dcc-ac24-455a-a682-13cd1f3f833f} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {456c6dc7-f610-410e-85a1-189ba73f1e43} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {e8a48cd8-ef7c-4188-8ddf-644f38d61441} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {e8d81a83-6722-4338-b788-f22e76c31a50} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {ec1125a1-e08d-4545-a8d0-c9787c86755c} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {96f50236-7030-47ab-af32-bb76484fadec} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {3b6da37f-829b-a36b-0ea5-75d979c938e3} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {d3bbfb85-g52f-5d67-c75f-8b3507gg7662} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {a4aaea74-f41e-4c56-b64e-7a2496ff4351} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {c3aaea74-f41e-4c56-b64e-7a2496ff6551} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {ECB1152B-9F28-414F-B3E8-B596E421779B} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {518fb927-ab1a-5842-3e93-5eed07ab0023} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {defe4a95-5592-47cc-8dee-9810e0da0ba0} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {f77fb0de-9056-11eb-8219-f26d2774ac7a} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {00dd2678-7092-4cf6-999d-0f0a388380ac} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {0cd2eacf-3743-4b4c-9543-6362a4030dde} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {12F2C43A-6FAA-437E-9DAB-6CE8640A524A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {535cfc94-6d5b-4da2-bbbd-e9faa9014012} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {09E55113-08BD-46BC-B5A3-6440F4410AC8} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {e4b6779e-2b75-492b-a149-7bc5a58e9469} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {1635d3a9-f723-4184-8328-018a761bb661} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {B6D999F9-9335-433F-BCD2-1E07409AFA39} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {b5175f42-1803-b19d-c5cc-b1c5514b815c} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {9e4cf877-53e0-4d2f-b351-e27bd8d907c1} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {38D1B59C-9F0A-648E-9DAB-6CE4640A539A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {2763ec40-c4dd-11ea-87d0-0242ac130003} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {D9FEA963-ED3C-416B-B01E-1FF7EE009EA4} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {00dd2678-7092-4cf6-999d-0f0a388380af} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {c3aaea74-f41e-4c56-b64e-7a2496ff6562} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {5B7BFA6B-B85E-4222-8988-16CCF9558393} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {0137ded9-5bc8-225e-64fc-40bf5d3fb59a} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {12cf972d-1c2b-80a1-33cc-056e6677ea5c} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {3dbd55e0-4b6b-03fe-f82f-961c2fc28386} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {728A1394-22BB-4889-AAF7-037CD1EF431A} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {96f50236-7030-47ab-af32-bb76484fad1c} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {e8bfe266-7dcb-417d-b714-925b4bb3bd89} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} - {defe4a95-5592-47cc-8dee-9810e0da0ba0} = {7D0F3FF7-054D-454B-8355-AD4598AAE157} + {09E55113-08BD-46BC-B5A3-6440F4410AC8} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {e8d81a83-6722-4338-b788-f22e76c31a50} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {38F2C59A-6FAA-498E-9DAB-6CE2640A539A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {456c6dc7-f610-410e-85a1-189ba73f1e43} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {C8CF1423-EE6F-4F1B-9C4C-A11AC125B212} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {38D1B59C-9F0A-648E-9DAB-6CE4640A539A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {d3bbfb85-g52f-5d67-c75f-8b3507gg7662} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {2f67a6e0-a581-11ee-9380-fa163e9f5a2f} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {535cfc94-6d5b-4da2-bbbd-e9faa9014012} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {5B7BFA6B-B85E-4222-8988-16CCF9558393} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {00dd2678-7092-4cf6-999d-0f0a388380af} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {23b1d5ea-92c1-4181-9023-ae7400b70586} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {0cd2eacf-3743-4b4c-9543-6362a4030dde} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {c3aaea74-f41e-4c56-b64e-7a2496ff6562} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {3dbd55e0-4b6b-03fe-f82f-961c2fc28386} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {3172c815-5fea-43e0-9589-8ab6f4af2866} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {518fb927-ab1a-5842-3e93-5eed07ab0023} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {12cf972d-1c2b-80a1-33cc-056e6677ea5c} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {defe4a95-5592-47cc-8dee-9810e0da0ba0} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {2763ec40-c4dd-11ea-87d0-0242ac130003} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {1f0af3bf-e48a-7329-2e45-531f3a8e3bcb} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {D9FEA963-ED3C-416B-B01E-1FF7EE009EA4} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {e132bcfb-d39d-4c85-bf7f-05c9c1b5b53d} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {ABF52EA6-B4B8-49B2-8C7E-9F110B3C91C2} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {F7ABA0D7-E3F9-4F81-BAA3-7A327D52228A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {33B457D0-A3A8-416E-9FE4-72ECDA5CF07A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {ec1125a1-e08d-4545-a8d0-c9787c86755c} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {659dc7e7-ee5b-4033-9cf0-7b8dc00fd88e} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {3b6da37f-829b-a36b-0ea5-75d979c938e3} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {96f50236-7030-47ab-af32-bb76484fad1c} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {e4b6779e-2b75-492b-a149-7bc5a58e9469} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {545A5E74-C543-429F-A2EF-1D39572628EE} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {00b194c9-0ebc-4c24-86c2-6f1fb9d9745e} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {728A1394-22BB-4889-AAF7-037CD1EF431A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {F964968D-5065-428A-A770-F3164C79769D} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {e8a48cd8-ef7c-4188-8ddf-644f38d61441} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {22C78414-DF3E-45C0-8A88-0458C33F765F} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {e8bfe266-7dcb-417d-b714-925b4bb3bd89} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {A65DAB9C-838C-45A4-B73D-A748FBE51A2A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {f77fb0de-9056-11eb-8219-f26d2774ac7a} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {8d3dd4fd-9ba0-4069-8770-78f7a8ea5f64} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {b5175f42-1803-b19d-c5cc-b1c5514b815c} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {1635d3a9-f723-4184-8328-018a761bb661} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {6F5501D3-A74F-DA56-DB4E-B8B3AAA3C7CD} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {59BA4A17-DFE9-4A67-A5F6-A49AA24965AF} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {E2E79C4D-9E38-443B-BF8B-83C087271443} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {13f5a69f-6a51-4b5e-a27d-4dde47e6c3d0} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {a4aaea74-f41e-4c56-b64e-7a2496ff4351} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {0137ded9-5bc8-225e-64fc-40bf5d3fb59a} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {ECB1152B-9F28-414F-B3E8-B596E421779B} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {6e957ba4-f20d-4c38-96ce-0e73f35c8bb5} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {12F2C43A-6FAA-437E-9DAB-6CE8640A524A} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {c66dd549-8ef4-48f1-a85b-eaffaa736cee} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {B6D999F9-9335-433F-BCD2-1E07409AFA39} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {D5AE7329-60CD-49A7-B9F9-15E9D6D44FB5} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {00dd2678-7092-4cf6-999d-0f0a388380ac} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {9e4cf877-53e0-4d2f-b351-e27bd8d907c1} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {c3aaea74-f41e-4c56-b64e-7a2496ff6551} = {49E4AF3E-05F4-401B-9734-C8739B64A986} + {1E3501D3-A14A-DA16-A148-B8B3ABA3C7AD} = {49E4AF3E-05F4-401B-9734-C8739B64A986} EndGlobalSection EndGlobal diff --git a/Services/Aad/Aad.csproj b/Services/Aad/Aad.csproj index aa14c825f..844e5c21a 100644 --- a/Services/Aad/Aad.csproj +++ b/Services/Aad/Aad.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Aad - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/AntiDDoS/AntiDDoS.csproj b/Services/AntiDDoS/AntiDDoS.csproj index 6882562b0..0dbd85a5c 100644 --- a/Services/AntiDDoS/AntiDDoS.csproj +++ b/Services/AntiDDoS/AntiDDoS.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.AntiDDoS - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Aom/Aom.csproj b/Services/Aom/Aom.csproj index 4756d5dff..9bec80ea6 100644 --- a/Services/Aom/Aom.csproj +++ b/Services/Aom/Aom.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Aom - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Aos/Aos.csproj b/Services/Aos/Aos.csproj index 79d1e1187..77fc7cc9a 100644 --- a/Services/Aos/Aos.csproj +++ b/Services/Aos/Aos.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Aos - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/As/As.csproj b/Services/As/As.csproj index 48e7b5e19..6cdb9d437 100644 --- a/Services/As/As.csproj +++ b/Services/As/As.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.As - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/As/V1/Model/CreateScalingPolicyV2Option.cs b/Services/As/V1/Model/CreateScalingPolicyV2Option.cs index 83c576ae7..8027eae15 100644 --- a/Services/As/V1/Model/CreateScalingPolicyV2Option.cs +++ b/Services/As/V1/Model/CreateScalingPolicyV2Option.cs @@ -152,12 +152,18 @@ public class ScalingPolicyTypeEnum /// public static readonly ScalingPolicyTypeEnum RECURRENCE = new ScalingPolicyTypeEnum("RECURRENCE"); + /// + /// Enum INTERVAL_ALARM for value: INTERVAL_ALARM + /// + public static readonly ScalingPolicyTypeEnum INTERVAL_ALARM = new ScalingPolicyTypeEnum("INTERVAL_ALARM"); + private static readonly Dictionary StaticFields = new Dictionary() { { "ALARM", ALARM }, { "SCHEDULED", SCHEDULED }, { "RECURRENCE", RECURRENCE }, + { "INTERVAL_ALARM", INTERVAL_ALARM }, }; private string _value; diff --git a/Services/As/V1/Model/IntervalAlarmActionsV2.cs b/Services/As/V1/Model/IntervalAlarmActionsV2.cs index 12fd8a3b8..9059c00e2 100644 --- a/Services/As/V1/Model/IntervalAlarmActionsV2.cs +++ b/Services/As/V1/Model/IntervalAlarmActionsV2.cs @@ -38,13 +38,19 @@ public class IntervalAlarmActionsV2 /// /// [JsonProperty("lower_bound", NullValueHandling = NullValueHandling.Ignore)] - public int? LowerBound { get; set; } + public double? LowerBound { get; set; } /// /// /// [JsonProperty("upper_bound", NullValueHandling = NullValueHandling.Ignore)] - public int? UpperBound { get; set; } + public double? UpperBound { get; set; } + + /// + /// 操作百分比,取值为0到20000的整数。当scaling_resource_type为SCALING_GROUP时,size和instance_percentage参数均无配置,则size默认为1。当scaling_resource_type为BANDWIDTH时,不支持配置instance_percentage参数。 + /// + [JsonProperty("percentage", NullValueHandling = NullValueHandling.Ignore)] + public int? Percentage { get; set; } @@ -60,6 +66,7 @@ public override string ToString() sb.Append(" size: ").Append(Size).Append("\n"); sb.Append(" lowerBound: ").Append(LowerBound).Append("\n"); sb.Append(" upperBound: ").Append(UpperBound).Append("\n"); + sb.Append(" percentage: ").Append(Percentage).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -105,6 +112,11 @@ public bool Equals(IntervalAlarmActionsV2 input) this.UpperBound == input.UpperBound || (this.UpperBound != null && this.UpperBound.Equals(input.UpperBound)) + ) && + ( + this.Percentage == input.Percentage || + (this.Percentage != null && + this.Percentage.Equals(input.Percentage)) ); } @@ -126,6 +138,8 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.LowerBound.GetHashCode(); if (this.UpperBound != null) hashCode = hashCode * 59 + this.UpperBound.GetHashCode(); + if (this.Percentage != null) + hashCode = hashCode * 59 + this.Percentage.GetHashCode(); return hashCode; } } diff --git a/Services/As/V1/Model/ScalingAllPolicyDetail.cs b/Services/As/V1/Model/ScalingAllPolicyDetail.cs index bcf52c0e6..7b66e3a82 100644 --- a/Services/As/V1/Model/ScalingAllPolicyDetail.cs +++ b/Services/As/V1/Model/ScalingAllPolicyDetail.cs @@ -273,12 +273,18 @@ public class ScalingPolicyTypeEnum /// public static readonly ScalingPolicyTypeEnum RECURRENCE = new ScalingPolicyTypeEnum("RECURRENCE"); + /// + /// Enum INTERVAL_ALARM for value: INTERVAL_ALARM + /// + public static readonly ScalingPolicyTypeEnum INTERVAL_ALARM = new ScalingPolicyTypeEnum("INTERVAL_ALARM"); + private static readonly Dictionary StaticFields = new Dictionary() { { "ALARM", ALARM }, { "SCHEDULED", SCHEDULED }, { "RECURRENCE", RECURRENCE }, + { "INTERVAL_ALARM", INTERVAL_ALARM }, }; private string _value; diff --git a/Services/As/V1/Model/ScalingPoliciesV2.cs b/Services/As/V1/Model/ScalingPoliciesV2.cs index 8a2771901..ae765ead9 100644 --- a/Services/As/V1/Model/ScalingPoliciesV2.cs +++ b/Services/As/V1/Model/ScalingPoliciesV2.cs @@ -273,12 +273,18 @@ public class ScalingPolicyTypeEnum /// public static readonly ScalingPolicyTypeEnum RECURRENCE = new ScalingPolicyTypeEnum("RECURRENCE"); + /// + /// Enum INTERVAL_ALARM for value: INTERVAL_ALARM + /// + public static readonly ScalingPolicyTypeEnum INTERVAL_ALARM = new ScalingPolicyTypeEnum("INTERVAL_ALARM"); + private static readonly Dictionary StaticFields = new Dictionary() { { "ALARM", ALARM }, { "SCHEDULED", SCHEDULED }, { "RECURRENCE", RECURRENCE }, + { "INTERVAL_ALARM", INTERVAL_ALARM }, }; private string _value; diff --git a/Services/As/V1/Model/ScalingV2PolicyDetail.cs b/Services/As/V1/Model/ScalingV2PolicyDetail.cs index d3bcd3cc4..0e0612d3b 100644 --- a/Services/As/V1/Model/ScalingV2PolicyDetail.cs +++ b/Services/As/V1/Model/ScalingV2PolicyDetail.cs @@ -273,12 +273,18 @@ public class ScalingPolicyTypeEnum /// public static readonly ScalingPolicyTypeEnum RECURRENCE = new ScalingPolicyTypeEnum("RECURRENCE"); + /// + /// Enum INTERVAL_ALARM for value: INTERVAL_ALARM + /// + public static readonly ScalingPolicyTypeEnum INTERVAL_ALARM = new ScalingPolicyTypeEnum("INTERVAL_ALARM"); + private static readonly Dictionary StaticFields = new Dictionary() { { "ALARM", ALARM }, { "SCHEDULED", SCHEDULED }, { "RECURRENCE", RECURRENCE }, + { "INTERVAL_ALARM", INTERVAL_ALARM }, }; private string _value; diff --git a/Services/As/V1/Model/UpdateScalingV2PolicyOption.cs b/Services/As/V1/Model/UpdateScalingV2PolicyOption.cs index eab4ec1f6..6a3384843 100644 --- a/Services/As/V1/Model/UpdateScalingV2PolicyOption.cs +++ b/Services/As/V1/Model/UpdateScalingV2PolicyOption.cs @@ -152,12 +152,18 @@ public class ScalingPolicyTypeEnum /// public static readonly ScalingPolicyTypeEnum RECURRENCE = new ScalingPolicyTypeEnum("RECURRENCE"); + /// + /// Enum INTERVAL_ALARM for value: INTERVAL_ALARM + /// + public static readonly ScalingPolicyTypeEnum INTERVAL_ALARM = new ScalingPolicyTypeEnum("INTERVAL_ALARM"); + private static readonly Dictionary StaticFields = new Dictionary() { { "ALARM", ALARM }, { "SCHEDULED", SCHEDULED }, { "RECURRENCE", RECURRENCE }, + { "INTERVAL_ALARM", INTERVAL_ALARM }, }; private string _value; diff --git a/Services/Bms/Bms.csproj b/Services/Bms/Bms.csproj index c9e186938..4ead5038b 100644 --- a/Services/Bms/Bms.csproj +++ b/Services/Bms/Bms.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Bms - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Bms/V1/Model/ASICAcceleratorInfo.cs b/Services/Bms/V1/Model/ASICAcceleratorInfo.cs new file mode 100644 index 000000000..0966a446e --- /dev/null +++ b/Services/Bms/V1/Model/ASICAcceleratorInfo.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Bms.V1.Model +{ + /// + /// + /// + public class ASICAcceleratorInfo + { + + /// + /// ASIC设备名称。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// ASIC设备数量。 + /// + [JsonProperty("count", NullValueHandling = NullValueHandling.Ignore)] + public int? Count { get; set; } + + /// + /// ASIC设备的内存,单位为MB。 + /// + [JsonProperty("memory_mb", NullValueHandling = NullValueHandling.Ignore)] + public int? MemoryMb { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ASICAcceleratorInfo {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" count: ").Append(Count).Append("\n"); + sb.Append(" memoryMb: ").Append(MemoryMb).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ASICAcceleratorInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ASICAcceleratorInfo input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Count == input.Count || + (this.Count != null && + this.Count.Equals(input.Count)) + ) && + ( + this.MemoryMb == input.MemoryMb || + (this.MemoryMb != null && + this.MemoryMb.Equals(input.MemoryMb)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Count != null) + hashCode = hashCode * 59 + this.Count.GetHashCode(); + if (this.MemoryMb != null) + hashCode = hashCode * 59 + this.MemoryMb.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Bms/V1/Model/FlavorInfos.cs b/Services/Bms/V1/Model/FlavorInfos.cs index b9bf559e0..08832ea35 100644 --- a/Services/Bms/V1/Model/FlavorInfos.cs +++ b/Services/Bms/V1/Model/FlavorInfos.cs @@ -46,6 +46,18 @@ public class FlavorInfos [JsonProperty("ram", NullValueHandling = NullValueHandling.Ignore)] public string Ram { get; set; } + /// + /// 该裸金属服务器规格对应的GPU设备。 + /// + [JsonProperty("gpus", NullValueHandling = NullValueHandling.Ignore)] + public List Gpus { get; set; } + + /// + /// 该裸金属服务器规格对应的ASIC设备。 + /// + [JsonProperty("asic_accelerators", NullValueHandling = NullValueHandling.Ignore)] + public List AsicAccelerators { get; set; } + /// @@ -60,6 +72,8 @@ public override string ToString() sb.Append(" disk: ").Append(Disk).Append("\n"); sb.Append(" vcpus: ").Append(Vcpus).Append("\n"); sb.Append(" ram: ").Append(Ram).Append("\n"); + sb.Append(" gpus: ").Append(Gpus).Append("\n"); + sb.Append(" asicAccelerators: ").Append(AsicAccelerators).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -105,6 +119,18 @@ public bool Equals(FlavorInfos input) this.Ram == input.Ram || (this.Ram != null && this.Ram.Equals(input.Ram)) + ) && + ( + this.Gpus == input.Gpus || + this.Gpus != null && + input.Gpus != null && + this.Gpus.SequenceEqual(input.Gpus) + ) && + ( + this.AsicAccelerators == input.AsicAccelerators || + this.AsicAccelerators != null && + input.AsicAccelerators != null && + this.AsicAccelerators.SequenceEqual(input.AsicAccelerators) ); } @@ -126,6 +152,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Vcpus.GetHashCode(); if (this.Ram != null) hashCode = hashCode * 59 + this.Ram.GetHashCode(); + if (this.Gpus != null) + hashCode = hashCode * 59 + this.Gpus.GetHashCode(); + if (this.AsicAccelerators != null) + hashCode = hashCode * 59 + this.AsicAccelerators.GetHashCode(); return hashCode; } } diff --git a/Services/Bms/V1/Model/GpuInfo.cs b/Services/Bms/V1/Model/GpuInfo.cs new file mode 100644 index 000000000..ead8dec8d --- /dev/null +++ b/Services/Bms/V1/Model/GpuInfo.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Bms.V1.Model +{ + /// + /// + /// + public class GpuInfo + { + + /// + /// GPU设备名称。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// GPU设备数量。 + /// + [JsonProperty("count", NullValueHandling = NullValueHandling.Ignore)] + public int? Count { get; set; } + + /// + /// GPU设备的内存,单位为MB。 + /// + [JsonProperty("memory_mb", NullValueHandling = NullValueHandling.Ignore)] + public int? MemoryMb { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class GpuInfo {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" count: ").Append(Count).Append("\n"); + sb.Append(" memoryMb: ").Append(MemoryMb).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as GpuInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(GpuInfo input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Count == input.Count || + (this.Count != null && + this.Count.Equals(input.Count)) + ) && + ( + this.MemoryMb == input.MemoryMb || + (this.MemoryMb != null && + this.MemoryMb.Equals(input.MemoryMb)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Count != null) + hashCode = hashCode * 59 + this.Count.GetHashCode(); + if (this.MemoryMb != null) + hashCode = hashCode * 59 + this.MemoryMb.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cbr/Cbr.csproj b/Services/Cbr/Cbr.csproj index 86b6092ca..11291475d 100644 --- a/Services/Cbr/Cbr.csproj +++ b/Services/Cbr/Cbr.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Cbr - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Cce/Cce.csproj b/Services/Cce/Cce.csproj index c9ef87a65..939036dbf 100644 --- a/Services/Cce/Cce.csproj +++ b/Services/Cce/Cce.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Cce - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Cce/V3/CceAsyncClient.cs b/Services/Cce/V3/CceAsyncClient.cs index 539d235e8..23b44a316 100644 --- a/Services/Cce/V3/CceAsyncClient.cs +++ b/Services/Cce/V3/CceAsyncClient.cs @@ -2301,5 +2301,1325 @@ public AsyncInvoker ShowVersionAsyncInvoker(ShowVersionRequ return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 批量添加指定集群的资源标签 + /// + /// 该API用于批量添加指定集群的资源标签。 + /// > - 每个集群支持最多20个资源标签。 + /// > - 此接口为幂等接口:创建时,如果创建的标签已经存在(key/value均相同视为重复),默认处理成功;key相同,value不同时会覆盖原有标签。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task BatchCreateAutopilotClusterTagsAsync(BatchCreateAutopilotClusterTagsRequest batchCreateAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchCreateAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/create", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchCreateAutopilotClusterTagsRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker BatchCreateAutopilotClusterTagsAsyncInvoker(BatchCreateAutopilotClusterTagsRequest batchCreateAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchCreateAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/create", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchCreateAutopilotClusterTagsRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 批量删除指定集群的资源标签 + /// + /// 该API用于批量删除指定集群的资源标签。 + /// > - 此接口为幂等接口:删除时,如果删除的标签key不存在,默认处理成功。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task BatchDeleteAutopilotClusterTagsAsync(BatchDeleteAutopilotClusterTagsRequest batchDeleteAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchDeleteAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/delete", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchDeleteAutopilotClusterTagsRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker BatchDeleteAutopilotClusterTagsAsyncInvoker(BatchDeleteAutopilotClusterTagsRequest batchDeleteAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchDeleteAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/delete", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchDeleteAutopilotClusterTagsRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 创建AddonInstance + /// + /// 根据提供的插件模板,安装插件实例。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotAddonInstanceAsync(CreateAutopilotAddonInstanceRequest createAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotAddonInstanceRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotAddonInstanceAsyncInvoker(CreateAutopilotAddonInstanceRequest createAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotAddonInstanceRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 创建集群 + /// + /// 该API用于创建一个空集群(即只有控制节点Master,没有工作节点Node)。请在调用本接口完成集群创建之后,通过[创建节点](cce_02_0242.xml)添加节点。 + /// + /// + /// > - 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// > - 调用该接口创建集群时,默认不安装ICAgent,若需安装ICAgent,可在请求Body参数的annotations中加入\"cluster.install.addons.external/install\":\"[{\"addonTemplateName\":\"icagent\"}]\"的集群注解,将在创建集群时自动安装ICAgent。ICAgent是应用性能管理APM的采集代理,运行在应用所在的服务器上,用于实时采集探针所获取的数据,安装ICAgent是使用应用性能管理APM的前提。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotClusterAsync(CreateAutopilotClusterRequest createAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotClusterAsyncInvoker(CreateAutopilotClusterRequest createAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群备份 + /// + /// 集群备份 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotClusterMasterSnapshotAsync(CreateAutopilotClusterMasterSnapshotRequest createAutopilotClusterMasterSnapshotRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotClusterMasterSnapshotRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterMasterSnapshotRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotClusterMasterSnapshotAsyncInvoker(CreateAutopilotClusterMasterSnapshotRequest createAutopilotClusterMasterSnapshotRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotClusterMasterSnapshotRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterMasterSnapshotRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群证书 + /// + /// 该API用于获取指定集群的证书信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotKubernetesClusterCertAsync(CreateAutopilotKubernetesClusterCertRequest createAutopilotKubernetesClusterCertRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotKubernetesClusterCertRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/clustercert", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotKubernetesClusterCertRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotKubernetesClusterCertAsyncInvoker(CreateAutopilotKubernetesClusterCertRequest createAutopilotKubernetesClusterCertRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotKubernetesClusterCertRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/clustercert", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotKubernetesClusterCertRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级后确认 + /// + /// 集群升级后确认,该接口建议配合Console使用,主要用于升级步骤完成后,客户确认集群状态和业务正常后做反馈。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotPostCheckAsync(CreateAutopilotPostCheckRequest createAutopilotPostCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPostCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/postcheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPostCheckRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotPostCheckAsyncInvoker(CreateAutopilotPostCheckRequest createAutopilotPostCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPostCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/postcheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPostCheckRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级前检查 + /// + /// 集群升级前检查 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotPreCheckAsync(CreateAutopilotPreCheckRequest createAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPreCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPreCheckRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotPreCheckAsyncInvoker(CreateAutopilotPreCheckRequest createAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPreCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPreCheckRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 创建模板实例 + /// + /// 创建模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotReleaseAsync(CreateAutopilotReleaseRequest createAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotReleaseRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotReleaseAsyncInvoker(CreateAutopilotReleaseRequest createAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotReleaseRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 开启集群升级流程引导任务 + /// + /// 该API用于创建一个集群升级流程引导任务。请在调用本接口完成引导任务创建之后,通过集群升级前检查开始检查任务。 + /// 升级流程任务用于控制集群升级任务的执行流程,执行流程为 升级前检查 => 集群升级 => 升级后检查。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateAutopilotUpgradeWorkFlowAsync(CreateAutopilotUpgradeWorkFlowRequest createAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotUpgradeWorkFlowRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateAutopilotUpgradeWorkFlowAsyncInvoker(CreateAutopilotUpgradeWorkFlowRequest createAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotUpgradeWorkFlowRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 删除AddonInstance + /// + /// 删除插件实例的功能。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DeleteAutopilotAddonInstanceAsync(DeleteAutopilotAddonInstanceRequest deleteAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", deleteAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotAddonInstanceRequest); + var response = await DoHttpRequestAsync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker DeleteAutopilotAddonInstanceAsyncInvoker(DeleteAutopilotAddonInstanceRequest deleteAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", deleteAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotAddonInstanceRequest); + return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 删除模板 + /// + /// 删除模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DeleteAutopilotChartAsync(DeleteAutopilotChartRequest deleteAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", deleteAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotChartRequest); + var response = await DoHttpRequestAsync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker DeleteAutopilotChartAsyncInvoker(DeleteAutopilotChartRequest deleteAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", deleteAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotChartRequest); + return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 删除集群 + /// + /// 该API用于删除一个指定的集群。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DeleteAutopilotClusterAsync(DeleteAutopilotClusterRequest deleteAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", deleteAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotClusterRequest); + var response = await DoHttpRequestAsync("DELETE", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker DeleteAutopilotClusterAsyncInvoker(DeleteAutopilotClusterRequest deleteAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", deleteAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotClusterRequest); + return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerialize); + } + + /// + /// 删除指定模板实例 + /// + /// 删除指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DeleteAutopilotReleaseAsync(DeleteAutopilotReleaseRequest deleteAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", deleteAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", deleteAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", deleteAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotReleaseRequest); + var response = await DoHttpRequestAsync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker DeleteAutopilotReleaseAsyncInvoker(DeleteAutopilotReleaseRequest deleteAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", deleteAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", deleteAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", deleteAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotReleaseRequest); + return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 下载模板 + /// + /// 下载模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DownloadAutopilotChartAsync(DownloadAutopilotChartRequest downloadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", downloadAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/archive", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", downloadAutopilotChartRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker DownloadAutopilotChartAsyncInvoker(DownloadAutopilotChartRequest downloadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", downloadAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/archive", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", downloadAutopilotChartRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取AddonInstance列表 + /// + /// 获取集群所有已安装插件实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotAddonInstancesAsync(ListAutopilotAddonInstancesRequest listAutopilotAddonInstancesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonInstancesRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotAddonInstancesAsyncInvoker(ListAutopilotAddonInstancesRequest listAutopilotAddonInstancesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonInstancesRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询AddonTemplates列表 + /// + /// 插件模板查询接口,查询插件信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotAddonTemplatesAsync(ListAutopilotAddonTemplatesRequest listAutopilotAddonTemplatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addontemplates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonTemplatesRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotAddonTemplatesAsyncInvoker(ListAutopilotAddonTemplatesRequest listAutopilotAddonTemplatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addontemplates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonTemplatesRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板列表 + /// + /// 获取模板列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotChartsAsync(ListAutopilotChartsRequest listAutopilotChartsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotChartsRequest); + var response = await DoHttpRequestAsync("GET", request); + var listAutopilotChartsResponse = JsonUtils.DeSerializeNull(response); + listAutopilotChartsResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotChartsResponse; + } + + public AsyncInvoker ListAutopilotChartsAsyncInvoker(ListAutopilotChartsRequest listAutopilotChartsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotChartsRequest); + return new AsyncInvoker(this, "GET", request, response => + { + var listAutopilotChartsResponse = JsonUtils.DeSerializeNull(response); + listAutopilotChartsResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotChartsResponse; + }); + } + + /// + /// 获取集群备份任务详情列表 + /// + /// 获取集群备份任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotClusterMasterSnapshotTasksAsync(ListAutopilotClusterMasterSnapshotTasksRequest listAutopilotClusterMasterSnapshotTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotClusterMasterSnapshotTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterMasterSnapshotTasksRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotClusterMasterSnapshotTasksAsyncInvoker(ListAutopilotClusterMasterSnapshotTasksRequest listAutopilotClusterMasterSnapshotTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotClusterMasterSnapshotTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterMasterSnapshotTasksRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级特性开关配置 + /// + /// 获取集群升级特性开关配置 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotClusterUpgradeFeatureGatesAsync(ListAutopilotClusterUpgradeFeatureGatesRequest listAutopilotClusterUpgradeFeatureGatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradefeaturegates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradeFeatureGatesRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotClusterUpgradeFeatureGatesAsyncInvoker(ListAutopilotClusterUpgradeFeatureGatesRequest listAutopilotClusterUpgradeFeatureGatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradefeaturegates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradeFeatureGatesRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级路径 + /// + /// 获取集群升级路径 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotClusterUpgradePathsAsync(ListAutopilotClusterUpgradePathsRequest listAutopilotClusterUpgradePathsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradepaths", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradePathsRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotClusterUpgradePathsAsyncInvoker(ListAutopilotClusterUpgradePathsRequest listAutopilotClusterUpgradePathsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradepaths", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradePathsRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定项目下的集群 + /// + /// 该API用于获取指定项目下所有集群的详细信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotClustersAsync(ListAutopilotClustersRequest listAutopilotClustersRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClustersRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotClustersAsyncInvoker(ListAutopilotClustersRequest listAutopilotClustersRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClustersRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级前检查任务详情列表 + /// + /// 获取集群升级前检查任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotPreCheckTasksAsync(ListAutopilotPreCheckTasksRequest listAutopilotPreCheckTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotPreCheckTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotPreCheckTasksRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotPreCheckTasksAsyncInvoker(ListAutopilotPreCheckTasksRequest listAutopilotPreCheckTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotPreCheckTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotPreCheckTasksRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板实例列表 + /// + /// 获取模板实例列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotReleasesAsync(ListAutopilotReleasesRequest listAutopilotReleasesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotReleasesRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotReleasesRequest); + var response = await DoHttpRequestAsync("GET", request); + var listAutopilotReleasesResponse = JsonUtils.DeSerializeNull(response); + listAutopilotReleasesResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotReleasesResponse; + } + + public AsyncInvoker ListAutopilotReleasesAsyncInvoker(ListAutopilotReleasesRequest listAutopilotReleasesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotReleasesRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotReleasesRequest); + return new AsyncInvoker(this, "GET", request, response => + { + var listAutopilotReleasesResponse = JsonUtils.DeSerializeNull(response); + listAutopilotReleasesResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotReleasesResponse; + }); + } + + /// + /// 获取集群升级任务详情列表 + /// + /// 获取集群升级任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotUpgradeClusterTasksAsync(ListAutopilotUpgradeClusterTasksRequest listAutopilotUpgradeClusterTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeClusterTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeClusterTasksRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotUpgradeClusterTasksAsyncInvoker(ListAutopilotUpgradeClusterTasksRequest listAutopilotUpgradeClusterTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeClusterTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeClusterTasksRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取UpgradeWorkFlows列表 + /// + /// 获取历史集群升级引导任务列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListAutopilotUpgradeWorkFlowsAsync(ListAutopilotUpgradeWorkFlowsRequest listAutopilotUpgradeWorkFlowsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeWorkFlowsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeWorkFlowsRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListAutopilotUpgradeWorkFlowsAsyncInvoker(ListAutopilotUpgradeWorkFlowsRequest listAutopilotUpgradeWorkFlowsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeWorkFlowsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeWorkFlowsRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 重试集群升级任务 + /// + /// 重新执行失败的集群升级任务。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task RetryAutopilotUpgradeClusterTaskAsync(RetryAutopilotUpgradeClusterTaskRequest retryAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", retryAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/retry", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", retryAutopilotUpgradeClusterTaskRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker RetryAutopilotUpgradeClusterTaskAsyncInvoker(RetryAutopilotUpgradeClusterTaskRequest retryAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", retryAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/retry", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", retryAutopilotUpgradeClusterTaskRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 回滚AddonInstance + /// + /// 将插件实例回滚到升级前的版本。只有在当前插件实例版本支持回滚到升级前的版本(status.isRollbackable为true),且插件实例状态为running(运行中)、available(可用)、abnormal(不可用)、upgradeFailed(升级失败)、rollbackFailed(回滚失败)时支持回滚。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task RollbackAutopilotAddonInstanceAsync(RollbackAutopilotAddonInstanceRequest rollbackAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", rollbackAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}/operation/rollback", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", rollbackAutopilotAddonInstanceRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker RollbackAutopilotAddonInstanceAsyncInvoker(RollbackAutopilotAddonInstanceRequest rollbackAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", rollbackAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}/operation/rollback", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", rollbackAutopilotAddonInstanceRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 获取AddonInstance详情 + /// + /// 获取插件实例详情。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotAddonInstanceAsync(ShowAutopilotAddonInstanceRequest showAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", showAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotAddonInstanceRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotAddonInstanceAsyncInvoker(ShowAutopilotAddonInstanceRequest showAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", showAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotAddonInstanceRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板 + /// + /// 获取模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotChartAsync(ShowAutopilotChartRequest showAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotChartAsyncInvoker(ShowAutopilotChartRequest showAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板Values + /// + /// 获取模板Values + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotChartValuesAsync(ShowAutopilotChartValuesRequest showAutopilotChartValuesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartValuesRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/values", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartValuesRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotChartValuesAsyncInvoker(ShowAutopilotChartValuesRequest showAutopilotChartValuesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartValuesRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/values", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartValuesRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定的集群 + /// + /// 该API用于获取指定集群的详细信息。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotClusterAsync(ShowAutopilotClusterRequest showAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotClusterAsyncInvoker(ShowAutopilotClusterRequest showAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群访问的地址 + /// + /// 该API用于通过集群ID获取集群访问的地址,包括PrivateIP(HA集群返回VIP)与PublicIP + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotClusterEndpointsAsync(ShowAutopilotClusterEndpointsRequest showAutopilotClusterEndpointsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterEndpointsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/openapi", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterEndpointsRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotClusterEndpointsAsyncInvoker(ShowAutopilotClusterEndpointsRequest showAutopilotClusterEndpointsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterEndpointsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/openapi", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterEndpointsRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级相关信息 + /// + /// 获取集群升级相关信息 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotClusterUpgradeInfoAsync(ShowAutopilotClusterUpgradeInfoRequest showAutopilotClusterUpgradeInfoRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterUpgradeInfoRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/upgradeinfo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterUpgradeInfoRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotClusterUpgradeInfoAsyncInvoker(ShowAutopilotClusterUpgradeInfoRequest showAutopilotClusterUpgradeInfoRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterUpgradeInfoRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/upgradeinfo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterUpgradeInfoRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取任务信息 + /// + /// 该API用于获取任务信息。通过某一任务请求下发后返回的jobID来查询指定任务的进度。 + /// > - 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径 + /// > - 该接口通常使用场景为: + /// > - 创建、删除集群时,查询相应任务的进度。 + /// > - 创建、删除节点时,查询相应任务的进度。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotJobAsync(ShowAutopilotJobRequest showAutopilotJobRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("job_id", showAutopilotJobRequest.JobId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/jobs/{job_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotJobRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotJobAsyncInvoker(ShowAutopilotJobRequest showAutopilotJobRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("job_id", showAutopilotJobRequest.JobId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/jobs/{job_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotJobRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级前检查任务详情 + /// + /// 获取集群升级前检查任务详情,任务ID由调用集群检查API后从响应体中uid字段获取。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotPreCheckAsync(ShowAutopilotPreCheckRequest showAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotPreCheckRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotPreCheckRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotPreCheckRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotPreCheckAsyncInvoker(ShowAutopilotPreCheckRequest showAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotPreCheckRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotPreCheckRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotPreCheckRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询CCE服务下的资源配额 + /// + /// 该API用于查询CCE服务下的资源配额。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotQuotasAsync(ShowAutopilotQuotasRequest showAutopilotQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotQuotasRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotQuotasAsyncInvoker(ShowAutopilotQuotasRequest showAutopilotQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotQuotasRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定模板实例 + /// + /// 获取指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotReleaseAsync(ShowAutopilotReleaseRequest showAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotReleaseAsyncInvoker(ShowAutopilotReleaseRequest showAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询指定模板实例历史记录 + /// + /// 查询指定模板实例历史记录 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotReleaseHistoryAsync(ShowAutopilotReleaseHistoryRequest showAutopilotReleaseHistoryRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseHistoryRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseHistoryRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseHistoryRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}/history", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseHistoryRequest); + var response = await DoHttpRequestAsync("GET", request); + var showAutopilotReleaseHistoryResponse = JsonUtils.DeSerializeNull(response); + showAutopilotReleaseHistoryResponse.Body = JsonUtils.DeSerializeList(response); + return showAutopilotReleaseHistoryResponse; + } + + public AsyncInvoker ShowAutopilotReleaseHistoryAsyncInvoker(ShowAutopilotReleaseHistoryRequest showAutopilotReleaseHistoryRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseHistoryRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseHistoryRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseHistoryRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}/history", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseHistoryRequest); + return new AsyncInvoker(this, "GET", request, response => + { + var showAutopilotReleaseHistoryResponse = JsonUtils.DeSerializeNull(response); + showAutopilotReleaseHistoryResponse.Body = JsonUtils.DeSerializeList(response); + return showAutopilotReleaseHistoryResponse; + }); + } + + /// + /// 获取集群升级任务详情 + /// + /// 获取集群升级任务详情,任务ID由调用集群升级API后从响应体中uid字段获取。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotUpgradeClusterTaskAsync(ShowAutopilotUpgradeClusterTaskRequest showAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotUpgradeClusterTaskRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeClusterTaskRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotUpgradeClusterTaskAsyncInvoker(ShowAutopilotUpgradeClusterTaskRequest showAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotUpgradeClusterTaskRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeClusterTaskRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定集群升级引导任务详情 + /// + /// 该API用于通过升级引导任务ID获取任务的详细信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotUpgradeWorkFlowAsync(ShowAutopilotUpgradeWorkFlowRequest showAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", showAutopilotUpgradeWorkFlowRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeWorkFlowRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotUpgradeWorkFlowAsyncInvoker(ShowAutopilotUpgradeWorkFlowRequest showAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", showAutopilotUpgradeWorkFlowRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeWorkFlowRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取用户模板配额 + /// + /// 获取用户模板配额 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowAutopilotUserChartsQuotasAsync(ShowAutopilotUserChartsQuotasRequest showAutopilotUserChartsQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUserChartsQuotasRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowAutopilotUserChartsQuotasAsyncInvoker(ShowAutopilotUserChartsQuotasRequest showAutopilotUserChartsQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUserChartsQuotasRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 更新AddonInstance + /// + /// 更新插件实例的功能。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpdateAutopilotAddonInstanceAsync(UpdateAutopilotAddonInstanceRequest updateAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", updateAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotAddonInstanceRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpdateAutopilotAddonInstanceAsyncInvoker(UpdateAutopilotAddonInstanceRequest updateAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", updateAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotAddonInstanceRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新模板 + /// + /// 更新模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpdateAutopilotChartAsync(UpdateAutopilotChartRequest updateAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", updateAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", updateAutopilotChartRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpdateAutopilotChartAsyncInvoker(UpdateAutopilotChartRequest updateAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", updateAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", updateAutopilotChartRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定的集群 + /// + /// 该API用于更新指定的集群。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpdateAutopilotClusterAsync(UpdateAutopilotClusterRequest updateAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", updateAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotClusterRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpdateAutopilotClusterAsyncInvoker(UpdateAutopilotClusterRequest updateAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", updateAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotClusterRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定模板实例 + /// + /// 更新指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpdateAutopilotReleaseAsync(UpdateAutopilotReleaseRequest updateAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", updateAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", updateAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", updateAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotReleaseRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpdateAutopilotReleaseAsyncInvoker(UpdateAutopilotReleaseRequest updateAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", updateAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", updateAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", updateAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotReleaseRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级 + /// + /// 集群升级。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpgradeAutopilotClusterAsync(UpgradeAutopilotClusterRequest upgradeAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotClusterRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpgradeAutopilotClusterAsyncInvoker(UpgradeAutopilotClusterRequest upgradeAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotClusterRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定集群升级引导任务状态 + /// + /// 该API用于更新指定集群升级引导任务状态,当前仅适用于取消升级流程 + /// 调用该API时升级流程引导任务状态不能为进行中(running) 已完成(success) 已取消(cancel),升级子任务状态不能为running(进行中) init(已初始化) pause(任务被暂停) queue(队列中) + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpgradeAutopilotWorkFlowUpdateAsync(UpgradeAutopilotWorkFlowUpdateRequest upgradeAutopilotWorkFlowUpdateRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotWorkFlowUpdateRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", upgradeAutopilotWorkFlowUpdateRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotWorkFlowUpdateRequest); + var response = await DoHttpRequestAsync("PATCH", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpgradeAutopilotWorkFlowUpdateAsyncInvoker(UpgradeAutopilotWorkFlowUpdateRequest upgradeAutopilotWorkFlowUpdateRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotWorkFlowUpdateRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", upgradeAutopilotWorkFlowUpdateRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotWorkFlowUpdateRequest); + return new AsyncInvoker(this, "PATCH", request, JsonUtils.DeSerialize); + } + + /// + /// 上传模板 + /// + /// 上传模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UploadAutopilotChartAsync(UploadAutopilotChartRequest uploadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", uploadAutopilotChartRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UploadAutopilotChartAsyncInvoker(UploadAutopilotChartRequest uploadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", uploadAutopilotChartRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + } } \ No newline at end of file diff --git a/Services/Cce/V3/CceClient.cs b/Services/Cce/V3/CceClient.cs index ca81206f0..92e03ecd4 100644 --- a/Services/Cce/V3/CceClient.cs +++ b/Services/Cce/V3/CceClient.cs @@ -2300,5 +2300,1325 @@ public SyncInvoker ShowVersionInvoker(ShowVersionRequest sh return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 批量添加指定集群的资源标签 + /// + /// 该API用于批量添加指定集群的资源标签。 + /// > - 每个集群支持最多20个资源标签。 + /// > - 此接口为幂等接口:创建时,如果创建的标签已经存在(key/value均相同视为重复),默认处理成功;key相同,value不同时会覆盖原有标签。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public BatchCreateAutopilotClusterTagsResponse BatchCreateAutopilotClusterTags(BatchCreateAutopilotClusterTagsRequest batchCreateAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchCreateAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/create", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchCreateAutopilotClusterTagsRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker BatchCreateAutopilotClusterTagsInvoker(BatchCreateAutopilotClusterTagsRequest batchCreateAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchCreateAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/create", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchCreateAutopilotClusterTagsRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 批量删除指定集群的资源标签 + /// + /// 该API用于批量删除指定集群的资源标签。 + /// > - 此接口为幂等接口:删除时,如果删除的标签key不存在,默认处理成功。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public BatchDeleteAutopilotClusterTagsResponse BatchDeleteAutopilotClusterTags(BatchDeleteAutopilotClusterTagsRequest batchDeleteAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchDeleteAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/delete", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchDeleteAutopilotClusterTagsRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker BatchDeleteAutopilotClusterTagsInvoker(BatchDeleteAutopilotClusterTagsRequest batchDeleteAutopilotClusterTagsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", batchDeleteAutopilotClusterTagsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/tags/delete", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", batchDeleteAutopilotClusterTagsRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 创建AddonInstance + /// + /// 根据提供的插件模板,安装插件实例。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotAddonInstanceResponse CreateAutopilotAddonInstance(CreateAutopilotAddonInstanceRequest createAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotAddonInstanceRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotAddonInstanceInvoker(CreateAutopilotAddonInstanceRequest createAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotAddonInstanceRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 创建集群 + /// + /// 该API用于创建一个空集群(即只有控制节点Master,没有工作节点Node)。请在调用本接口完成集群创建之后,通过[创建节点](cce_02_0242.xml)添加节点。 + /// + /// + /// > - 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// > - 调用该接口创建集群时,默认不安装ICAgent,若需安装ICAgent,可在请求Body参数的annotations中加入\"cluster.install.addons.external/install\":\"[{\"addonTemplateName\":\"icagent\"}]\"的集群注解,将在创建集群时自动安装ICAgent。ICAgent是应用性能管理APM的采集代理,运行在应用所在的服务器上,用于实时采集探针所获取的数据,安装ICAgent是使用应用性能管理APM的前提。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotClusterResponse CreateAutopilotCluster(CreateAutopilotClusterRequest createAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotClusterInvoker(CreateAutopilotClusterRequest createAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群备份 + /// + /// 集群备份 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotClusterMasterSnapshotResponse CreateAutopilotClusterMasterSnapshot(CreateAutopilotClusterMasterSnapshotRequest createAutopilotClusterMasterSnapshotRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotClusterMasterSnapshotRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterMasterSnapshotRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotClusterMasterSnapshotInvoker(CreateAutopilotClusterMasterSnapshotRequest createAutopilotClusterMasterSnapshotRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotClusterMasterSnapshotRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotClusterMasterSnapshotRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群证书 + /// + /// 该API用于获取指定集群的证书信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotKubernetesClusterCertResponse CreateAutopilotKubernetesClusterCert(CreateAutopilotKubernetesClusterCertRequest createAutopilotKubernetesClusterCertRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotKubernetesClusterCertRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/clustercert", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotKubernetesClusterCertRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotKubernetesClusterCertInvoker(CreateAutopilotKubernetesClusterCertRequest createAutopilotKubernetesClusterCertRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotKubernetesClusterCertRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/clustercert", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotKubernetesClusterCertRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级后确认 + /// + /// 集群升级后确认,该接口建议配合Console使用,主要用于升级步骤完成后,客户确认集群状态和业务正常后做反馈。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotPostCheckResponse CreateAutopilotPostCheck(CreateAutopilotPostCheckRequest createAutopilotPostCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPostCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/postcheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPostCheckRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotPostCheckInvoker(CreateAutopilotPostCheckRequest createAutopilotPostCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPostCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/postcheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPostCheckRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级前检查 + /// + /// 集群升级前检查 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotPreCheckResponse CreateAutopilotPreCheck(CreateAutopilotPreCheckRequest createAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPreCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPreCheckRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotPreCheckInvoker(CreateAutopilotPreCheckRequest createAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotPreCheckRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotPreCheckRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 创建模板实例 + /// + /// 创建模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotReleaseResponse CreateAutopilotRelease(CreateAutopilotReleaseRequest createAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotReleaseRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotReleaseInvoker(CreateAutopilotReleaseRequest createAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotReleaseRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 开启集群升级流程引导任务 + /// + /// 该API用于创建一个集群升级流程引导任务。请在调用本接口完成引导任务创建之后,通过集群升级前检查开始检查任务。 + /// 升级流程任务用于控制集群升级任务的执行流程,执行流程为 升级前检查 => 集群升级 => 升级后检查。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateAutopilotUpgradeWorkFlowResponse CreateAutopilotUpgradeWorkFlow(CreateAutopilotUpgradeWorkFlowRequest createAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotUpgradeWorkFlowRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateAutopilotUpgradeWorkFlowInvoker(CreateAutopilotUpgradeWorkFlowRequest createAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", createAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", createAutopilotUpgradeWorkFlowRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 删除AddonInstance + /// + /// 删除插件实例的功能。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DeleteAutopilotAddonInstanceResponse DeleteAutopilotAddonInstance(DeleteAutopilotAddonInstanceRequest deleteAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", deleteAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotAddonInstanceRequest); + var response = DoHttpRequestSync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker DeleteAutopilotAddonInstanceInvoker(DeleteAutopilotAddonInstanceRequest deleteAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", deleteAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotAddonInstanceRequest); + return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 删除模板 + /// + /// 删除模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DeleteAutopilotChartResponse DeleteAutopilotChart(DeleteAutopilotChartRequest deleteAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", deleteAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotChartRequest); + var response = DoHttpRequestSync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker DeleteAutopilotChartInvoker(DeleteAutopilotChartRequest deleteAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", deleteAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotChartRequest); + return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 删除集群 + /// + /// 该API用于删除一个指定的集群。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DeleteAutopilotClusterResponse DeleteAutopilotCluster(DeleteAutopilotClusterRequest deleteAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", deleteAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotClusterRequest); + var response = DoHttpRequestSync("DELETE", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker DeleteAutopilotClusterInvoker(DeleteAutopilotClusterRequest deleteAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", deleteAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotClusterRequest); + return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerialize); + } + + /// + /// 删除指定模板实例 + /// + /// 删除指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DeleteAutopilotReleaseResponse DeleteAutopilotRelease(DeleteAutopilotReleaseRequest deleteAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", deleteAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", deleteAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", deleteAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotReleaseRequest); + var response = DoHttpRequestSync("DELETE", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker DeleteAutopilotReleaseInvoker(DeleteAutopilotReleaseRequest deleteAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", deleteAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", deleteAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", deleteAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteAutopilotReleaseRequest); + return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); + } + + /// + /// 下载模板 + /// + /// 下载模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DownloadAutopilotChartResponse DownloadAutopilotChart(DownloadAutopilotChartRequest downloadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", downloadAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/archive", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", downloadAutopilotChartRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker DownloadAutopilotChartInvoker(DownloadAutopilotChartRequest downloadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", downloadAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/archive", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", downloadAutopilotChartRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取AddonInstance列表 + /// + /// 获取集群所有已安装插件实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotAddonInstancesResponse ListAutopilotAddonInstances(ListAutopilotAddonInstancesRequest listAutopilotAddonInstancesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonInstancesRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotAddonInstancesInvoker(ListAutopilotAddonInstancesRequest listAutopilotAddonInstancesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonInstancesRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询AddonTemplates列表 + /// + /// 插件模板查询接口,查询插件信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotAddonTemplatesResponse ListAutopilotAddonTemplates(ListAutopilotAddonTemplatesRequest listAutopilotAddonTemplatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addontemplates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonTemplatesRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotAddonTemplatesInvoker(ListAutopilotAddonTemplatesRequest listAutopilotAddonTemplatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addontemplates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotAddonTemplatesRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板列表 + /// + /// 获取模板列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotChartsResponse ListAutopilotCharts(ListAutopilotChartsRequest listAutopilotChartsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotChartsRequest); + var response = DoHttpRequestSync("GET", request); + var listAutopilotChartsResponse = JsonUtils.DeSerializeNull(response); + listAutopilotChartsResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotChartsResponse; + } + + public SyncInvoker ListAutopilotChartsInvoker(ListAutopilotChartsRequest listAutopilotChartsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotChartsRequest); + return new SyncInvoker(this, "GET", request, response => + { + var listAutopilotChartsResponse = JsonUtils.DeSerializeNull(response); + listAutopilotChartsResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotChartsResponse; + }); + } + + /// + /// 获取集群备份任务详情列表 + /// + /// 获取集群备份任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotClusterMasterSnapshotTasksResponse ListAutopilotClusterMasterSnapshotTasks(ListAutopilotClusterMasterSnapshotTasksRequest listAutopilotClusterMasterSnapshotTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotClusterMasterSnapshotTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterMasterSnapshotTasksRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotClusterMasterSnapshotTasksInvoker(ListAutopilotClusterMasterSnapshotTasksRequest listAutopilotClusterMasterSnapshotTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotClusterMasterSnapshotTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3.1/projects/{project_id}/clusters/{cluster_id}/operation/snapshot/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterMasterSnapshotTasksRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级特性开关配置 + /// + /// 获取集群升级特性开关配置 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotClusterUpgradeFeatureGatesResponse ListAutopilotClusterUpgradeFeatureGates(ListAutopilotClusterUpgradeFeatureGatesRequest listAutopilotClusterUpgradeFeatureGatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradefeaturegates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradeFeatureGatesRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotClusterUpgradeFeatureGatesInvoker(ListAutopilotClusterUpgradeFeatureGatesRequest listAutopilotClusterUpgradeFeatureGatesRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradefeaturegates", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradeFeatureGatesRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级路径 + /// + /// 获取集群升级路径 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotClusterUpgradePathsResponse ListAutopilotClusterUpgradePaths(ListAutopilotClusterUpgradePathsRequest listAutopilotClusterUpgradePathsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradepaths", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradePathsRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotClusterUpgradePathsInvoker(ListAutopilotClusterUpgradePathsRequest listAutopilotClusterUpgradePathsRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/clusterupgradepaths", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClusterUpgradePathsRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定项目下的集群 + /// + /// 该API用于获取指定项目下所有集群的详细信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotClustersResponse ListAutopilotClusters(ListAutopilotClustersRequest listAutopilotClustersRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClustersRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotClustersInvoker(ListAutopilotClustersRequest listAutopilotClustersRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotClustersRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级前检查任务详情列表 + /// + /// 获取集群升级前检查任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotPreCheckTasksResponse ListAutopilotPreCheckTasks(ListAutopilotPreCheckTasksRequest listAutopilotPreCheckTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotPreCheckTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotPreCheckTasksRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotPreCheckTasksInvoker(ListAutopilotPreCheckTasksRequest listAutopilotPreCheckTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotPreCheckTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotPreCheckTasksRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板实例列表 + /// + /// 获取模板实例列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotReleasesResponse ListAutopilotReleases(ListAutopilotReleasesRequest listAutopilotReleasesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotReleasesRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotReleasesRequest); + var response = DoHttpRequestSync("GET", request); + var listAutopilotReleasesResponse = JsonUtils.DeSerializeNull(response); + listAutopilotReleasesResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotReleasesResponse; + } + + public SyncInvoker ListAutopilotReleasesInvoker(ListAutopilotReleasesRequest listAutopilotReleasesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotReleasesRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/releases", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotReleasesRequest); + return new SyncInvoker(this, "GET", request, response => + { + var listAutopilotReleasesResponse = JsonUtils.DeSerializeNull(response); + listAutopilotReleasesResponse.Body = JsonUtils.DeSerializeList(response); + return listAutopilotReleasesResponse; + }); + } + + /// + /// 获取集群升级任务详情列表 + /// + /// 获取集群升级任务详情列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotUpgradeClusterTasksResponse ListAutopilotUpgradeClusterTasks(ListAutopilotUpgradeClusterTasksRequest listAutopilotUpgradeClusterTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeClusterTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeClusterTasksRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotUpgradeClusterTasksInvoker(ListAutopilotUpgradeClusterTasksRequest listAutopilotUpgradeClusterTasksRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeClusterTasksRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeClusterTasksRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取UpgradeWorkFlows列表 + /// + /// 获取历史集群升级引导任务列表 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListAutopilotUpgradeWorkFlowsResponse ListAutopilotUpgradeWorkFlows(ListAutopilotUpgradeWorkFlowsRequest listAutopilotUpgradeWorkFlowsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeWorkFlowsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeWorkFlowsRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListAutopilotUpgradeWorkFlowsInvoker(ListAutopilotUpgradeWorkFlowsRequest listAutopilotUpgradeWorkFlowsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", listAutopilotUpgradeWorkFlowsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listAutopilotUpgradeWorkFlowsRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 重试集群升级任务 + /// + /// 重新执行失败的集群升级任务。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public RetryAutopilotUpgradeClusterTaskResponse RetryAutopilotUpgradeClusterTask(RetryAutopilotUpgradeClusterTaskRequest retryAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", retryAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/retry", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", retryAutopilotUpgradeClusterTaskRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker RetryAutopilotUpgradeClusterTaskInvoker(RetryAutopilotUpgradeClusterTaskRequest retryAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", retryAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/retry", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", retryAutopilotUpgradeClusterTaskRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + + /// + /// 回滚AddonInstance + /// + /// 将插件实例回滚到升级前的版本。只有在当前插件实例版本支持回滚到升级前的版本(status.isRollbackable为true),且插件实例状态为running(运行中)、available(可用)、abnormal(不可用)、upgradeFailed(升级失败)、rollbackFailed(回滚失败)时支持回滚。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public RollbackAutopilotAddonInstanceResponse RollbackAutopilotAddonInstance(RollbackAutopilotAddonInstanceRequest rollbackAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", rollbackAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}/operation/rollback", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", rollbackAutopilotAddonInstanceRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker RollbackAutopilotAddonInstanceInvoker(RollbackAutopilotAddonInstanceRequest rollbackAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", rollbackAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}/operation/rollback", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", rollbackAutopilotAddonInstanceRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 获取AddonInstance详情 + /// + /// 获取插件实例详情。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotAddonInstanceResponse ShowAutopilotAddonInstance(ShowAutopilotAddonInstanceRequest showAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", showAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotAddonInstanceRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotAddonInstanceInvoker(ShowAutopilotAddonInstanceRequest showAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", showAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotAddonInstanceRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板 + /// + /// 获取模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotChartResponse ShowAutopilotChart(ShowAutopilotChartRequest showAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotChartInvoker(ShowAutopilotChartRequest showAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取模板Values + /// + /// 获取模板Values + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotChartValuesResponse ShowAutopilotChartValues(ShowAutopilotChartValuesRequest showAutopilotChartValuesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartValuesRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/values", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartValuesRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotChartValuesInvoker(ShowAutopilotChartValuesRequest showAutopilotChartValuesRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", showAutopilotChartValuesRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}/values", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotChartValuesRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定的集群 + /// + /// 该API用于获取指定集群的详细信息。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotClusterResponse ShowAutopilotCluster(ShowAutopilotClusterRequest showAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotClusterInvoker(ShowAutopilotClusterRequest showAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群访问的地址 + /// + /// 该API用于通过集群ID获取集群访问的地址,包括PrivateIP(HA集群返回VIP)与PublicIP + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotClusterEndpointsResponse ShowAutopilotClusterEndpoints(ShowAutopilotClusterEndpointsRequest showAutopilotClusterEndpointsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterEndpointsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/openapi", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterEndpointsRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotClusterEndpointsInvoker(ShowAutopilotClusterEndpointsRequest showAutopilotClusterEndpointsRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterEndpointsRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/openapi", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterEndpointsRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级相关信息 + /// + /// 获取集群升级相关信息 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotClusterUpgradeInfoResponse ShowAutopilotClusterUpgradeInfo(ShowAutopilotClusterUpgradeInfoRequest showAutopilotClusterUpgradeInfoRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterUpgradeInfoRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/upgradeinfo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterUpgradeInfoRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotClusterUpgradeInfoInvoker(ShowAutopilotClusterUpgradeInfoRequest showAutopilotClusterUpgradeInfoRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotClusterUpgradeInfoRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/upgradeinfo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotClusterUpgradeInfoRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取任务信息 + /// + /// 该API用于获取任务信息。通过某一任务请求下发后返回的jobID来查询指定任务的进度。 + /// > - 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径 + /// > - 该接口通常使用场景为: + /// > - 创建、删除集群时,查询相应任务的进度。 + /// > - 创建、删除节点时,查询相应任务的进度。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotJobResponse ShowAutopilotJob(ShowAutopilotJobRequest showAutopilotJobRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("job_id", showAutopilotJobRequest.JobId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/jobs/{job_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotJobRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotJobInvoker(ShowAutopilotJobRequest showAutopilotJobRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("job_id", showAutopilotJobRequest.JobId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/jobs/{job_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotJobRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取集群升级前检查任务详情 + /// + /// 获取集群升级前检查任务详情,任务ID由调用集群检查API后从响应体中uid字段获取。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotPreCheckResponse ShowAutopilotPreCheck(ShowAutopilotPreCheckRequest showAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotPreCheckRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotPreCheckRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotPreCheckRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotPreCheckInvoker(ShowAutopilotPreCheckRequest showAutopilotPreCheckRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotPreCheckRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotPreCheckRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/precheck/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotPreCheckRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询CCE服务下的资源配额 + /// + /// 该API用于查询CCE服务下的资源配额。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotQuotasResponse ShowAutopilotQuotas(ShowAutopilotQuotasRequest showAutopilotQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotQuotasRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotQuotasInvoker(ShowAutopilotQuotasRequest showAutopilotQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotQuotasRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定模板实例 + /// + /// 获取指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotReleaseResponse ShowAutopilotRelease(ShowAutopilotReleaseRequest showAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotReleaseInvoker(ShowAutopilotReleaseRequest showAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 查询指定模板实例历史记录 + /// + /// 查询指定模板实例历史记录 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotReleaseHistoryResponse ShowAutopilotReleaseHistory(ShowAutopilotReleaseHistoryRequest showAutopilotReleaseHistoryRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseHistoryRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseHistoryRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseHistoryRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}/history", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseHistoryRequest); + var response = DoHttpRequestSync("GET", request); + var showAutopilotReleaseHistoryResponse = JsonUtils.DeSerializeNull(response); + showAutopilotReleaseHistoryResponse.Body = JsonUtils.DeSerializeList(response); + return showAutopilotReleaseHistoryResponse; + } + + public SyncInvoker ShowAutopilotReleaseHistoryInvoker(ShowAutopilotReleaseHistoryRequest showAutopilotReleaseHistoryRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", showAutopilotReleaseHistoryRequest.Name.ToString()); + urlParam.Add("namespace", showAutopilotReleaseHistoryRequest.Namespace.ToString()); + urlParam.Add("cluster_id", showAutopilotReleaseHistoryRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}/history", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotReleaseHistoryRequest); + return new SyncInvoker(this, "GET", request, response => + { + var showAutopilotReleaseHistoryResponse = JsonUtils.DeSerializeNull(response); + showAutopilotReleaseHistoryResponse.Body = JsonUtils.DeSerializeList(response); + return showAutopilotReleaseHistoryResponse; + }); + } + + /// + /// 获取集群升级任务详情 + /// + /// 获取集群升级任务详情,任务ID由调用集群升级API后从响应体中uid字段获取。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotUpgradeClusterTaskResponse ShowAutopilotUpgradeClusterTask(ShowAutopilotUpgradeClusterTaskRequest showAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotUpgradeClusterTaskRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeClusterTaskRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotUpgradeClusterTaskInvoker(ShowAutopilotUpgradeClusterTaskRequest showAutopilotUpgradeClusterTaskRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeClusterTaskRequest.ClusterId.ToString()); + urlParam.Add("task_id", showAutopilotUpgradeClusterTaskRequest.TaskId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade/tasks/{task_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeClusterTaskRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取指定集群升级引导任务详情 + /// + /// 该API用于通过升级引导任务ID获取任务的详细信息。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotUpgradeWorkFlowResponse ShowAutopilotUpgradeWorkFlow(ShowAutopilotUpgradeWorkFlowRequest showAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", showAutopilotUpgradeWorkFlowRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeWorkFlowRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotUpgradeWorkFlowInvoker(ShowAutopilotUpgradeWorkFlowRequest showAutopilotUpgradeWorkFlowRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", showAutopilotUpgradeWorkFlowRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", showAutopilotUpgradeWorkFlowRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUpgradeWorkFlowRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 获取用户模板配额 + /// + /// 获取用户模板配额 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowAutopilotUserChartsQuotasResponse ShowAutopilotUserChartsQuotas(ShowAutopilotUserChartsQuotasRequest showAutopilotUserChartsQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUserChartsQuotasRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowAutopilotUserChartsQuotasInvoker(ShowAutopilotUserChartsQuotasRequest showAutopilotUserChartsQuotasRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{project_id}/quotas", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showAutopilotUserChartsQuotasRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + + /// + /// 更新AddonInstance + /// + /// 更新插件实例的功能。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpdateAutopilotAddonInstanceResponse UpdateAutopilotAddonInstance(UpdateAutopilotAddonInstanceRequest updateAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", updateAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotAddonInstanceRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpdateAutopilotAddonInstanceInvoker(UpdateAutopilotAddonInstanceRequest updateAutopilotAddonInstanceRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("id", updateAutopilotAddonInstanceRequest.Id.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/addons/{id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotAddonInstanceRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新模板 + /// + /// 更新模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpdateAutopilotChartResponse UpdateAutopilotChart(UpdateAutopilotChartRequest updateAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", updateAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", updateAutopilotChartRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpdateAutopilotChartInvoker(UpdateAutopilotChartRequest updateAutopilotChartRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("chart_id", updateAutopilotChartRequest.ChartId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts/{chart_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", updateAutopilotChartRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定的集群 + /// + /// 该API用于更新指定的集群。 + /// >集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpdateAutopilotClusterResponse UpdateAutopilotCluster(UpdateAutopilotClusterRequest updateAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", updateAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotClusterRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpdateAutopilotClusterInvoker(UpdateAutopilotClusterRequest updateAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", updateAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotClusterRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定模板实例 + /// + /// 更新指定模板实例 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpdateAutopilotReleaseResponse UpdateAutopilotRelease(UpdateAutopilotReleaseRequest updateAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", updateAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", updateAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", updateAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotReleaseRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpdateAutopilotReleaseInvoker(UpdateAutopilotReleaseRequest updateAutopilotReleaseRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("name", updateAutopilotReleaseRequest.Name.ToString()); + urlParam.Add("namespace", updateAutopilotReleaseRequest.Namespace.ToString()); + urlParam.Add("cluster_id", updateAutopilotReleaseRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/cam/v3/clusters/{cluster_id}/namespace/{namespace}/releases/{name}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateAutopilotReleaseRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + + /// + /// 集群升级 + /// + /// 集群升级。 + /// > - 集群升级涉及多维度的组件升级操作,强烈建议统一通过CCE控制台执行交互式升级,降低集群升级过程的业务意外受损风险; + /// > - 当前集群升级相关接口受限开放。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpgradeAutopilotClusterResponse UpgradeAutopilotCluster(UpgradeAutopilotClusterRequest upgradeAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotClusterRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpgradeAutopilotClusterInvoker(UpgradeAutopilotClusterRequest upgradeAutopilotClusterRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotClusterRequest.ClusterId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgrade", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotClusterRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + + /// + /// 更新指定集群升级引导任务状态 + /// + /// 该API用于更新指定集群升级引导任务状态,当前仅适用于取消升级流程 + /// 调用该API时升级流程引导任务状态不能为进行中(running) 已完成(success) 已取消(cancel),升级子任务状态不能为running(进行中) init(已初始化) pause(任务被暂停) queue(队列中) + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpgradeAutopilotWorkFlowUpdateResponse UpgradeAutopilotWorkFlowUpdate(UpgradeAutopilotWorkFlowUpdateRequest upgradeAutopilotWorkFlowUpdateRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotWorkFlowUpdateRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", upgradeAutopilotWorkFlowUpdateRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotWorkFlowUpdateRequest); + var response = DoHttpRequestSync("PATCH", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpgradeAutopilotWorkFlowUpdateInvoker(UpgradeAutopilotWorkFlowUpdateRequest upgradeAutopilotWorkFlowUpdateRequest) + { + var urlParam = new Dictionary(); + urlParam.Add("cluster_id", upgradeAutopilotWorkFlowUpdateRequest.ClusterId.ToString()); + urlParam.Add("upgrade_workflow_id", upgradeAutopilotWorkFlowUpdateRequest.UpgradeWorkflowId.ToString()); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v3/projects/{project_id}/clusters/{cluster_id}/operation/upgradeworkflows/{upgrade_workflow_id}", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", upgradeAutopilotWorkFlowUpdateRequest); + return new SyncInvoker(this, "PATCH", request, JsonUtils.DeSerialize); + } + + /// + /// 上传模板 + /// + /// 上传模板 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UploadAutopilotChartResponse UploadAutopilotChart(UploadAutopilotChartRequest uploadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", uploadAutopilotChartRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UploadAutopilotChartInvoker(UploadAutopilotChartRequest uploadAutopilotChartRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/autopilot/v2/charts", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "multipart/form-data", uploadAutopilotChartRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + } } \ No newline at end of file diff --git a/Services/Cce/V3/Model/AutopilotAuthentication.cs b/Services/Cce/V3/Model/AutopilotAuthentication.cs new file mode 100644 index 000000000..ef41b65e0 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotAuthentication.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotAuthentication + { + + /// + /// 集群认证模式。默认取值为“rbac”。 + /// + [JsonProperty("mode", NullValueHandling = NullValueHandling.Ignore)] + public string Mode { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotAuthentication {\n"); + sb.Append(" mode: ").Append(Mode).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotAuthentication); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotAuthentication input) + { + if (input == null) + return false; + + return + ( + this.Mode == input.Mode || + (this.Mode != null && + this.Mode.Equals(input.Mode)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Mode != null) + hashCode = hashCode * 59 + this.Mode.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotCluster.cs b/Services/Cce/V3/Model/AutopilotCluster.cs new file mode 100644 index 000000000..cdb298785 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotCluster.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotCluster + { + + /// + /// API类型,固定值“Cluster”或“cluster”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotCluster {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotCluster); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotCluster input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterEndpoints.cs b/Services/Cce/V3/Model/AutopilotClusterEndpoints.cs new file mode 100644 index 000000000..6c3211cfc --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterEndpoints.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterEndpoints + { + + /// + /// 集群中 kube-apiserver 的访问地址 + /// + [JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)] + public string Url { get; set; } + + /// + /// 集群访问地址的类型 - Internal:用户子网内访问的地址 - External:公网访问的地址 + /// + [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] + public string Type { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterEndpoints {\n"); + sb.Append(" url: ").Append(Url).Append("\n"); + sb.Append(" type: ").Append(Type).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterEndpoints); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterEndpoints input) + { + if (input == null) + return false; + + return + ( + this.Url == input.Url || + (this.Url != null && + this.Url.Equals(input.Url)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Url != null) + hashCode = hashCode * 59 + this.Url.GetHashCode(); + if (this.Type != null) + hashCode = hashCode * 59 + this.Type.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterExtendParam.cs b/Services/Cce/V3/Model/AutopilotClusterExtendParam.cs new file mode 100644 index 000000000..546211a68 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterExtendParam.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterExtendParam + { + + /// + /// 集群所属的企业项目ID。 > - 需要开通企业项目功能后才可配置企业项目。 > - 集群所属的企业项目与集群下所关联的其他云服务资源所属的企业项目必须保持一致。 + /// + [JsonProperty("enterpriseProjectId", NullValueHandling = NullValueHandling.Ignore)] + public string EnterpriseProjectId { get; set; } + + /// + /// 记录集群通过何种升级方式升级到当前版本。 + /// + [JsonProperty("upgradefrom", NullValueHandling = NullValueHandling.Ignore)] + public string Upgradefrom { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterExtendParam {\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); + sb.Append(" upgradefrom: ").Append(Upgradefrom).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterExtendParam); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterExtendParam input) + { + if (input == null) + return false; + + return + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + (this.EnterpriseProjectId != null && + this.EnterpriseProjectId.Equals(input.EnterpriseProjectId)) + ) && + ( + this.Upgradefrom == input.Upgradefrom || + (this.Upgradefrom != null && + this.Upgradefrom.Equals(input.Upgradefrom)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); + if (this.Upgradefrom != null) + hashCode = hashCode * 59 + this.Upgradefrom.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterInformation.cs b/Services/Cce/V3/Model/AutopilotClusterInformation.cs new file mode 100644 index 000000000..85598aac4 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterInformation.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterInformation + { + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterInformationSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadataForUpdate Metadata { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterInformation {\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterInformation); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterInformation input) + { + if (input == null) + return false; + + return + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterInformationSpec.cs b/Services/Cce/V3/Model/AutopilotClusterInformationSpec.cs new file mode 100644 index 000000000..2636758b1 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterInformationSpec.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterInformationSpec + { + + /// + /// 集群的描述信息。 1. 字符取值范围[0,200]。不包含~$%^&*<>[]{}()'\"#\\等特殊字符。 2. 仅运行(Available)的集群允许修改。 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 集群的API Server服务端证书中的自定义SAN(Subject Alternative Name)字段,遵从SSL标准X509定义的格式规范。 1. 不允许出现同名重复。 2. 格式符合IP和域名格式。 示例: ``` SAN 1: DNS Name=example.com SAN 2: DNS Name=www.example.com SAN 3: DNS Name=example.net SAN 4: IP Address=93.184.216.34 ``` + /// + [JsonProperty("customSan", NullValueHandling = NullValueHandling.Ignore)] + public List CustomSan { get; set; } + + /// + /// + /// + [JsonProperty("eniNetwork", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotEniNetworkUpdate EniNetwork { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterInformationSpec {\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" customSan: ").Append(CustomSan).Append("\n"); + sb.Append(" eniNetwork: ").Append(EniNetwork).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterInformationSpec); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterInformationSpec input) + { + if (input == null) + return false; + + return + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.CustomSan == input.CustomSan || + this.CustomSan != null && + input.CustomSan != null && + this.CustomSan.SequenceEqual(input.CustomSan) + ) && + ( + this.EniNetwork == input.EniNetwork || + (this.EniNetwork != null && + this.EniNetwork.Equals(input.EniNetwork)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.CustomSan != null) + hashCode = hashCode * 59 + this.CustomSan.GetHashCode(); + if (this.EniNetwork != null) + hashCode = hashCode * 59 + this.EniNetwork.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterMetadata.cs b/Services/Cce/V3/Model/AutopilotClusterMetadata.cs new file mode 100644 index 000000000..1fd495333 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterMetadata.cs @@ -0,0 +1,163 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// 支持通过 annotations[\"cluster.install.addons/install\"] 来指定创建集群时需要安装的插件 + /// + public class AutopilotClusterMetadata + { + + /// + /// 集群名称。 命名规则:以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围4-128位,且不能以中划线(-)结尾。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 集群ID,资源唯一标识,创建成功后自动生成,填写无效。在创建包周期集群时,响应体不返回集群ID。 + /// + [JsonProperty("uid", NullValueHandling = NullValueHandling.Ignore)] + public string Uid { get; set; } + + /// + /// 集群显示名,用于在 CCE 界面显示,该名称创建后可修改。 命名规则:以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围4-128位,且不能以中划线(-)结尾。 显示名和其他集群的名称、显示名不可以重复。 在创建集群、更新集群请求体中,集群显示名alias未指定或取值为空,表示与集群名称name一致。在查询集群等响应体中,集群显示名alias将必然返回,未配置时将返回集群名称name。 + /// + [JsonProperty("alias", NullValueHandling = NullValueHandling.Ignore)] + public string Alias { get; set; } + + /// + /// 集群注解,由key/value组成: ``` \"annotations\": { \"key1\" : \"value1\", \"key2\" : \"value2\" } ``` > - Annotations不用于标识和选择对象。Annotations中的元数据可以是small或large,structured或unstructured,并且可以包括标签不允许使用的字符。 > - 该字段不会被数据库保存,当前仅用于指定集群待安装插件。 + /// + [JsonProperty("annotations", NullValueHandling = NullValueHandling.Ignore)] + public Dictionary Annotations { get; set; } + + /// + /// 集群标签,key/value对格式。 > 该字段值由系统自动生成,用于升级时前端识别集群支持的特性开关,用户指定无效。 + /// + [JsonProperty("labels", NullValueHandling = NullValueHandling.Ignore)] + public Dictionary Labels { get; set; } + + /// + /// 集群创建时间 + /// + [JsonProperty("creationTimestamp", NullValueHandling = NullValueHandling.Ignore)] + public string CreationTimestamp { get; set; } + + /// + /// 集群更新时间 + /// + [JsonProperty("updateTimestamp", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateTimestamp { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterMetadata {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" uid: ").Append(Uid).Append("\n"); + sb.Append(" alias: ").Append(Alias).Append("\n"); + sb.Append(" annotations: ").Append(Annotations).Append("\n"); + sb.Append(" labels: ").Append(Labels).Append("\n"); + sb.Append(" creationTimestamp: ").Append(CreationTimestamp).Append("\n"); + sb.Append(" updateTimestamp: ").Append(UpdateTimestamp).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterMetadata); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterMetadata input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Uid == input.Uid || + (this.Uid != null && + this.Uid.Equals(input.Uid)) + ) && + ( + this.Alias == input.Alias || + (this.Alias != null && + this.Alias.Equals(input.Alias)) + ) && + ( + this.Annotations == input.Annotations || + this.Annotations != null && + input.Annotations != null && + this.Annotations.SequenceEqual(input.Annotations) + ) && + ( + this.Labels == input.Labels || + this.Labels != null && + input.Labels != null && + this.Labels.SequenceEqual(input.Labels) + ) && + ( + this.CreationTimestamp == input.CreationTimestamp || + (this.CreationTimestamp != null && + this.CreationTimestamp.Equals(input.CreationTimestamp)) + ) && + ( + this.UpdateTimestamp == input.UpdateTimestamp || + (this.UpdateTimestamp != null && + this.UpdateTimestamp.Equals(input.UpdateTimestamp)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Uid != null) + hashCode = hashCode * 59 + this.Uid.GetHashCode(); + if (this.Alias != null) + hashCode = hashCode * 59 + this.Alias.GetHashCode(); + if (this.Annotations != null) + hashCode = hashCode * 59 + this.Annotations.GetHashCode(); + if (this.Labels != null) + hashCode = hashCode * 59 + this.Labels.GetHashCode(); + if (this.CreationTimestamp != null) + hashCode = hashCode * 59 + this.CreationTimestamp.GetHashCode(); + if (this.UpdateTimestamp != null) + hashCode = hashCode * 59 + this.UpdateTimestamp.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterMetadataForUpdate.cs b/Services/Cce/V3/Model/AutopilotClusterMetadataForUpdate.cs new file mode 100644 index 000000000..37356f7e8 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterMetadataForUpdate.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterMetadataForUpdate + { + + /// + /// 集群显示名。 命名规则:以小写字母开头,由小写字母、数字、中划线(-)组成,长度范围4-128位,且不能以中划线(-)结尾。 显示名和其他集群的名称、显示名不可以重复。 为空时表示不进行修改。 + /// + [JsonProperty("alias", NullValueHandling = NullValueHandling.Ignore)] + public string Alias { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterMetadataForUpdate {\n"); + sb.Append(" alias: ").Append(Alias).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterMetadataForUpdate); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterMetadataForUpdate input) + { + if (input == null) + return false; + + return + ( + this.Alias == input.Alias || + (this.Alias != null && + this.Alias.Equals(input.Alias)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Alias != null) + hashCode = hashCode * 59 + this.Alias.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterSpec.cs b/Services/Cce/V3/Model/AutopilotClusterSpec.cs new file mode 100644 index 000000000..80208c44d --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterSpec.cs @@ -0,0 +1,712 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// 集群参数定义。 + /// + public class AutopilotClusterSpec + { + /// + /// 集群类别。 + /// + /// 集群类别。 + [JsonConverter(typeof(EnumClassConverter))] + public class CategoryEnum + { + /// + /// Enum TURBO for value: Turbo + /// + public static readonly CategoryEnum TURBO = new CategoryEnum("Turbo"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "Turbo", TURBO }, + }; + + private string _value; + + public CategoryEnum() + { + + } + + public CategoryEnum(string value) + { + _value = value; + } + + public static CategoryEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as CategoryEnum)) + { + return true; + } + + return false; + } + + public bool Equals(CategoryEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(CategoryEnum a, CategoryEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(CategoryEnum a, CategoryEnum b) + { + return !(a == b); + } + } + + /// + /// 集群Master节点架构: - VirtualMachine:Master节点为x86架构服务器 + /// + /// 集群Master节点架构: - VirtualMachine:Master节点为x86架构服务器 + [JsonConverter(typeof(EnumClassConverter))] + public class TypeEnum + { + /// + /// Enum VIRTUALMACHINE for value: VirtualMachine + /// + public static readonly TypeEnum VIRTUALMACHINE = new TypeEnum("VirtualMachine"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "VirtualMachine", VIRTUALMACHINE }, + }; + + private string _value; + + public TypeEnum() + { + + } + + public TypeEnum(string value) + { + _value = value; + } + + public static TypeEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as TypeEnum)) + { + return true; + } + + return false; + } + + public bool Equals(TypeEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(TypeEnum a, TypeEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(TypeEnum a, TypeEnum b) + { + return !(a == b); + } + } + + /// + /// 服务转发模式: - iptables:社区传统的kube-proxy模式,完全以iptables规则的方式来实现service负载均衡。该方式最主要的问题是在服务多的时候产生太多的iptables规则,非增量式更新会引入一定的时延,大规模情况下有明显的性能问题。 > 默认使用iptables转发模式。 + /// + /// 服务转发模式: - iptables:社区传统的kube-proxy模式,完全以iptables规则的方式来实现service负载均衡。该方式最主要的问题是在服务多的时候产生太多的iptables规则,非增量式更新会引入一定的时延,大规模情况下有明显的性能问题。 > 默认使用iptables转发模式。 + [JsonConverter(typeof(EnumClassConverter))] + public class KubeProxyModeEnum + { + /// + /// Enum IPTABLES for value: iptables + /// + public static readonly KubeProxyModeEnum IPTABLES = new KubeProxyModeEnum("iptables"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "iptables", IPTABLES }, + }; + + private string _value; + + public KubeProxyModeEnum() + { + + } + + public KubeProxyModeEnum(string value) + { + _value = value; + } + + public static KubeProxyModeEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as KubeProxyModeEnum)) + { + return true; + } + + return false; + } + + public bool Equals(KubeProxyModeEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(KubeProxyModeEnum a, KubeProxyModeEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(KubeProxyModeEnum a, KubeProxyModeEnum b) + { + return !(a == b); + } + } + + + /// + /// 集群类别。 + /// + [JsonProperty("category", NullValueHandling = NullValueHandling.Ignore)] + public CategoryEnum Category { get; set; } + /// + /// 集群Master节点架构: - VirtualMachine:Master节点为x86架构服务器 + /// + [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] + public TypeEnum Type { get; set; } + /// + /// 集群规格,cce.autopilot.cluster + /// + [JsonProperty("flavor", NullValueHandling = NullValueHandling.Ignore)] + public string Flavor { get; set; } + + /// + /// 集群版本,与Kubernetes社区基线版本保持一致,建议选择最新版本。 在CCE控制台支持创建两种最新版本的集群。可登录CCE控制台创建集群,在“版本”处获取到集群版本。 其它集群版本,当前仍可通过api创建,但后续会逐渐下线,具体下线策略请关注CCE官方公告。 > - 若不配置,默认创建最新版本的集群。 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + /// + /// CCE集群平台版本号,表示集群版本(version)下的内部版本。用于跟踪某一集群版本内的迭代,集群版本内唯一,跨集群版本重新计数。不支持用户指定,集群创建时自动选择对应集群版本的最新平台版本。 platformVersion格式为:cce.X.Y - X: 表示内部特性版本。集群版本中特性或者补丁修复,或者OS支持等变更场景。其值从1开始单调递增。 - Y: 表示内部特性版本的补丁版本。仅用于特性版本上线后的软件包更新,不涉及其他修改。其值从0开始单调递增。 + /// + [JsonProperty("platformVersion", NullValueHandling = NullValueHandling.Ignore)] + public string PlatformVersion { get; set; } + + /// + /// 集群描述,对于集群使用目的的描述,可根据实际情况自定义,默认为空。集群创建成功后可通过接口[更新指定的集群](cce_02_0240.xml)来做出修改,也可在CCE控制台中对应集群的“集群详情”下的“描述”处进行修改。仅支持utf-8编码。 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 集群的API Server服务端证书中的自定义SAN(Subject Alternative Name)字段,遵从SSL标准X509定义的格式规范。 1. 不允许出现同名重复。 2. 格式符合IP和域名格式。 示例: ``` SAN 1: DNS Name=example.com SAN 2: DNS Name=www.example.com SAN 3: DNS Name=example.net SAN 4: IP Address=93.184.216.34 ``` + /// + [JsonProperty("customSan", NullValueHandling = NullValueHandling.Ignore)] + public List CustomSan { get; set; } + + /// + /// 集群是否配置SNAT。开启后您的集群可以通过NAT网关访问公网,默认使用所选的VPC中已有的NAT网关,否则系统将会为您自动创建一个默认规格的NAT网关并绑定弹性公网IP,自动配置SNAT规则。 + /// + [JsonProperty("enableSnat", NullValueHandling = NullValueHandling.Ignore)] + public bool? EnableSnat { get; set; } + + /// + /// 集群是否配置镜像访问。为确保您的集群节点可以从容器镜像服务中拉取镜像,默认使用所选VPC中已有的SWR和OBS终端节点,否则将会为您自动新建SWR和OBS终端节点。 + /// + [JsonProperty("enableSWRImageAccess", NullValueHandling = NullValueHandling.Ignore)] + public bool? EnableSWRImageAccess { get; set; } + + /// + /// 是否为Autopilot集群。 + /// + [JsonProperty("enableAutopilot", NullValueHandling = NullValueHandling.Ignore)] + public bool? EnableAutopilot { get; set; } + + /// + /// 集群是否使用IPv6模式。 + /// + [JsonProperty("ipv6enable", NullValueHandling = NullValueHandling.Ignore)] + public bool? Ipv6enable { get; set; } + + /// + /// + /// + [JsonProperty("hostNetwork", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotHostNetwork HostNetwork { get; set; } + + /// + /// + /// + [JsonProperty("containerNetwork", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotContainerNetwork ContainerNetwork { get; set; } + + /// + /// + /// + [JsonProperty("eniNetwork", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotEniNetwork EniNetwork { get; set; } + + /// + /// + /// + [JsonProperty("serviceNetwork", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotServiceNetwork ServiceNetwork { get; set; } + + /// + /// + /// + [JsonProperty("authentication", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotAuthentication Authentication { get; set; } + + /// + /// 集群的计费方式。 - 0: 按需计费 默认为“按需计费”。 + /// + [JsonProperty("billingMode", NullValueHandling = NullValueHandling.Ignore)] + public int? BillingMode { get; set; } + + /// + /// 服务网段参数,kubernetes clusterIP取值范围。创建集群时如若未传参,默认为\"10.247.0.0/16\"。该参数废弃中,推荐使用新字段serviceNetwork,包含IPv4服务网段。 + /// + [JsonProperty("kubernetesSvcIpRange", NullValueHandling = NullValueHandling.Ignore)] + public string KubernetesSvcIpRange { get; set; } + + /// + /// 集群资源标签 + /// + [JsonProperty("clusterTags", NullValueHandling = NullValueHandling.Ignore)] + public List ClusterTags { get; set; } + + /// + /// 服务转发模式: - iptables:社区传统的kube-proxy模式,完全以iptables规则的方式来实现service负载均衡。该方式最主要的问题是在服务多的时候产生太多的iptables规则,非增量式更新会引入一定的时延,大规模情况下有明显的性能问题。 > 默认使用iptables转发模式。 + /// + [JsonProperty("kubeProxyMode", NullValueHandling = NullValueHandling.Ignore)] + public KubeProxyModeEnum KubeProxyMode { get; set; } + /// + /// 可用区(仅查询返回字段)。 [CCE支持的可用区请参考[地区和终端节点](https://developer.huaweicloud.com/endpoint?CCE)](tag:hws) [CCE支持的可用区请参考[地区和终端节点](https://developer.huaweicloud.com/intl/zh-cn/endpoint?CCE)](tag:hws_hk) + /// + [JsonProperty("az", NullValueHandling = NullValueHandling.Ignore)] + public string Az { get; set; } + + /// + /// + /// + [JsonProperty("extendParam", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterExtendParam ExtendParam { get; set; } + + /// + /// 覆盖集群默认组件配置 若指定了不支持的组件或组件不支持的参数,该配置项将被忽略。 当前支持的可配置组件及其参数详见 [[配置管理](https://support.huaweicloud.com/usermanual-cce/cce_10_0213.html)](tag:hws) [[配置管理](https://support.huaweicloud.com/intl/zh-cn/usermanual-cce/cce_10_0213.html)](tag:hws_hk) + /// + [JsonProperty("configurationsOverride", NullValueHandling = NullValueHandling.Ignore)] + public List ConfigurationsOverride { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterSpec {\n"); + sb.Append(" category: ").Append(Category).Append("\n"); + sb.Append(" type: ").Append(Type).Append("\n"); + sb.Append(" flavor: ").Append(Flavor).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append(" platformVersion: ").Append(PlatformVersion).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" customSan: ").Append(CustomSan).Append("\n"); + sb.Append(" enableSnat: ").Append(EnableSnat).Append("\n"); + sb.Append(" enableSWRImageAccess: ").Append(EnableSWRImageAccess).Append("\n"); + sb.Append(" enableAutopilot: ").Append(EnableAutopilot).Append("\n"); + sb.Append(" ipv6enable: ").Append(Ipv6enable).Append("\n"); + sb.Append(" hostNetwork: ").Append(HostNetwork).Append("\n"); + sb.Append(" containerNetwork: ").Append(ContainerNetwork).Append("\n"); + sb.Append(" eniNetwork: ").Append(EniNetwork).Append("\n"); + sb.Append(" serviceNetwork: ").Append(ServiceNetwork).Append("\n"); + sb.Append(" authentication: ").Append(Authentication).Append("\n"); + sb.Append(" billingMode: ").Append(BillingMode).Append("\n"); + sb.Append(" kubernetesSvcIpRange: ").Append(KubernetesSvcIpRange).Append("\n"); + sb.Append(" clusterTags: ").Append(ClusterTags).Append("\n"); + sb.Append(" kubeProxyMode: ").Append(KubeProxyMode).Append("\n"); + sb.Append(" az: ").Append(Az).Append("\n"); + sb.Append(" extendParam: ").Append(ExtendParam).Append("\n"); + sb.Append(" configurationsOverride: ").Append(ConfigurationsOverride).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterSpec); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterSpec input) + { + if (input == null) + return false; + + return + ( + this.Category == input.Category || + (this.Category != null && + this.Category.Equals(input.Category)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.Flavor == input.Flavor || + (this.Flavor != null && + this.Flavor.Equals(input.Flavor)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ) && + ( + this.PlatformVersion == input.PlatformVersion || + (this.PlatformVersion != null && + this.PlatformVersion.Equals(input.PlatformVersion)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.CustomSan == input.CustomSan || + this.CustomSan != null && + input.CustomSan != null && + this.CustomSan.SequenceEqual(input.CustomSan) + ) && + ( + this.EnableSnat == input.EnableSnat || + (this.EnableSnat != null && + this.EnableSnat.Equals(input.EnableSnat)) + ) && + ( + this.EnableSWRImageAccess == input.EnableSWRImageAccess || + (this.EnableSWRImageAccess != null && + this.EnableSWRImageAccess.Equals(input.EnableSWRImageAccess)) + ) && + ( + this.EnableAutopilot == input.EnableAutopilot || + (this.EnableAutopilot != null && + this.EnableAutopilot.Equals(input.EnableAutopilot)) + ) && + ( + this.Ipv6enable == input.Ipv6enable || + (this.Ipv6enable != null && + this.Ipv6enable.Equals(input.Ipv6enable)) + ) && + ( + this.HostNetwork == input.HostNetwork || + (this.HostNetwork != null && + this.HostNetwork.Equals(input.HostNetwork)) + ) && + ( + this.ContainerNetwork == input.ContainerNetwork || + (this.ContainerNetwork != null && + this.ContainerNetwork.Equals(input.ContainerNetwork)) + ) && + ( + this.EniNetwork == input.EniNetwork || + (this.EniNetwork != null && + this.EniNetwork.Equals(input.EniNetwork)) + ) && + ( + this.ServiceNetwork == input.ServiceNetwork || + (this.ServiceNetwork != null && + this.ServiceNetwork.Equals(input.ServiceNetwork)) + ) && + ( + this.Authentication == input.Authentication || + (this.Authentication != null && + this.Authentication.Equals(input.Authentication)) + ) && + ( + this.BillingMode == input.BillingMode || + (this.BillingMode != null && + this.BillingMode.Equals(input.BillingMode)) + ) && + ( + this.KubernetesSvcIpRange == input.KubernetesSvcIpRange || + (this.KubernetesSvcIpRange != null && + this.KubernetesSvcIpRange.Equals(input.KubernetesSvcIpRange)) + ) && + ( + this.ClusterTags == input.ClusterTags || + this.ClusterTags != null && + input.ClusterTags != null && + this.ClusterTags.SequenceEqual(input.ClusterTags) + ) && + ( + this.KubeProxyMode == input.KubeProxyMode || + (this.KubeProxyMode != null && + this.KubeProxyMode.Equals(input.KubeProxyMode)) + ) && + ( + this.Az == input.Az || + (this.Az != null && + this.Az.Equals(input.Az)) + ) && + ( + this.ExtendParam == input.ExtendParam || + (this.ExtendParam != null && + this.ExtendParam.Equals(input.ExtendParam)) + ) && + ( + this.ConfigurationsOverride == input.ConfigurationsOverride || + this.ConfigurationsOverride != null && + input.ConfigurationsOverride != null && + this.ConfigurationsOverride.SequenceEqual(input.ConfigurationsOverride) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Category != null) + hashCode = hashCode * 59 + this.Category.GetHashCode(); + if (this.Type != null) + hashCode = hashCode * 59 + this.Type.GetHashCode(); + if (this.Flavor != null) + hashCode = hashCode * 59 + this.Flavor.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + if (this.PlatformVersion != null) + hashCode = hashCode * 59 + this.PlatformVersion.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.CustomSan != null) + hashCode = hashCode * 59 + this.CustomSan.GetHashCode(); + if (this.EnableSnat != null) + hashCode = hashCode * 59 + this.EnableSnat.GetHashCode(); + if (this.EnableSWRImageAccess != null) + hashCode = hashCode * 59 + this.EnableSWRImageAccess.GetHashCode(); + if (this.EnableAutopilot != null) + hashCode = hashCode * 59 + this.EnableAutopilot.GetHashCode(); + if (this.Ipv6enable != null) + hashCode = hashCode * 59 + this.Ipv6enable.GetHashCode(); + if (this.HostNetwork != null) + hashCode = hashCode * 59 + this.HostNetwork.GetHashCode(); + if (this.ContainerNetwork != null) + hashCode = hashCode * 59 + this.ContainerNetwork.GetHashCode(); + if (this.EniNetwork != null) + hashCode = hashCode * 59 + this.EniNetwork.GetHashCode(); + if (this.ServiceNetwork != null) + hashCode = hashCode * 59 + this.ServiceNetwork.GetHashCode(); + if (this.Authentication != null) + hashCode = hashCode * 59 + this.Authentication.GetHashCode(); + if (this.BillingMode != null) + hashCode = hashCode * 59 + this.BillingMode.GetHashCode(); + if (this.KubernetesSvcIpRange != null) + hashCode = hashCode * 59 + this.KubernetesSvcIpRange.GetHashCode(); + if (this.ClusterTags != null) + hashCode = hashCode * 59 + this.ClusterTags.GetHashCode(); + if (this.KubeProxyMode != null) + hashCode = hashCode * 59 + this.KubeProxyMode.GetHashCode(); + if (this.Az != null) + hashCode = hashCode * 59 + this.Az.GetHashCode(); + if (this.ExtendParam != null) + hashCode = hashCode * 59 + this.ExtendParam.GetHashCode(); + if (this.ConfigurationsOverride != null) + hashCode = hashCode * 59 + this.ConfigurationsOverride.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotClusterStatus.cs b/Services/Cce/V3/Model/AutopilotClusterStatus.cs new file mode 100644 index 000000000..6e283b403 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotClusterStatus.cs @@ -0,0 +1,218 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotClusterStatus + { + + /// + /// 集群状态,取值如下 - Available:可用,表示集群处于正常状态。 - Unavailable:不可用,表示集群异常,需手动删除。 - Creating:创建中,表示集群正处于创建过程中。 - Deleting:删除中,表示集群正处于删除过程中。 - Upgrading:升级中,表示集群正处于升级过程中。 - RollingBack:回滚中,表示集群正处于回滚过程中。 - RollbackFailed:回滚异常,表示集群回滚异常。 - Error:错误,表示集群资源异常,可尝试手动删除。 + /// + [JsonProperty("phase", NullValueHandling = NullValueHandling.Ignore)] + public string Phase { get; set; } + + /// + /// 任务ID,集群当前状态关联的任务ID。当前支持: - 创建集群时返回关联的任务ID,可通过任务ID查询创建集群的附属任务信息; - 删除集群或者删除集群失败时返回关联的任务ID,此字段非空时,可通过任务ID查询删除集群的附属任务信息。 > 任务信息具有一定时效性,仅用于短期跟踪任务进度,请勿用于集群状态判断等额外场景。 + /// + [JsonProperty("jobID", NullValueHandling = NullValueHandling.Ignore)] + public string JobID { get; set; } + + /// + /// 集群变为当前状态的原因,在集群在非“Available”状态下时,会返回此参数。 + /// + [JsonProperty("reason", NullValueHandling = NullValueHandling.Ignore)] + public string Reason { get; set; } + + /// + /// 集群变为当前状态的原因的详细信息,在集群在非“Available”状态下时,会返回此参数。 + /// + [JsonProperty("message", NullValueHandling = NullValueHandling.Ignore)] + public string Message { get; set; } + + /// + /// 集群中 kube-apiserver 的访问地址。 + /// + [JsonProperty("endpoints", NullValueHandling = NullValueHandling.Ignore)] + public List Endpoints { get; set; } + + /// + /// CBC资源锁定 + /// + [JsonProperty("isLocked", NullValueHandling = NullValueHandling.Ignore)] + public bool? IsLocked { get; set; } + + /// + /// CBC资源锁定场景 + /// + [JsonProperty("lockScene", NullValueHandling = NullValueHandling.Ignore)] + public string LockScene { get; set; } + + /// + /// 锁定资源 + /// + [JsonProperty("lockSource", NullValueHandling = NullValueHandling.Ignore)] + public string LockSource { get; set; } + + /// + /// 锁定的资源ID + /// + [JsonProperty("lockSourceId", NullValueHandling = NullValueHandling.Ignore)] + public string LockSourceId { get; set; } + + /// + /// 删除配置状态(仅删除请求响应包含) + /// + [JsonProperty("deleteOption", NullValueHandling = NullValueHandling.Ignore)] + public Object DeleteOption { get; set; } + + /// + /// 删除状态信息(仅删除请求响应包含) + /// + [JsonProperty("deleteStatus", NullValueHandling = NullValueHandling.Ignore)] + public Object DeleteStatus { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotClusterStatus {\n"); + sb.Append(" phase: ").Append(Phase).Append("\n"); + sb.Append(" jobID: ").Append(JobID).Append("\n"); + sb.Append(" reason: ").Append(Reason).Append("\n"); + sb.Append(" message: ").Append(Message).Append("\n"); + sb.Append(" endpoints: ").Append(Endpoints).Append("\n"); + sb.Append(" isLocked: ").Append(IsLocked).Append("\n"); + sb.Append(" lockScene: ").Append(LockScene).Append("\n"); + sb.Append(" lockSource: ").Append(LockSource).Append("\n"); + sb.Append(" lockSourceId: ").Append(LockSourceId).Append("\n"); + sb.Append(" deleteOption: ").Append(DeleteOption).Append("\n"); + sb.Append(" deleteStatus: ").Append(DeleteStatus).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotClusterStatus); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotClusterStatus input) + { + if (input == null) + return false; + + return + ( + this.Phase == input.Phase || + (this.Phase != null && + this.Phase.Equals(input.Phase)) + ) && + ( + this.JobID == input.JobID || + (this.JobID != null && + this.JobID.Equals(input.JobID)) + ) && + ( + this.Reason == input.Reason || + (this.Reason != null && + this.Reason.Equals(input.Reason)) + ) && + ( + this.Message == input.Message || + (this.Message != null && + this.Message.Equals(input.Message)) + ) && + ( + this.Endpoints == input.Endpoints || + this.Endpoints != null && + input.Endpoints != null && + this.Endpoints.SequenceEqual(input.Endpoints) + ) && + ( + this.IsLocked == input.IsLocked || + (this.IsLocked != null && + this.IsLocked.Equals(input.IsLocked)) + ) && + ( + this.LockScene == input.LockScene || + (this.LockScene != null && + this.LockScene.Equals(input.LockScene)) + ) && + ( + this.LockSource == input.LockSource || + (this.LockSource != null && + this.LockSource.Equals(input.LockSource)) + ) && + ( + this.LockSourceId == input.LockSourceId || + (this.LockSourceId != null && + this.LockSourceId.Equals(input.LockSourceId)) + ) && + ( + this.DeleteOption == input.DeleteOption || + (this.DeleteOption != null && + this.DeleteOption.Equals(input.DeleteOption)) + ) && + ( + this.DeleteStatus == input.DeleteStatus || + (this.DeleteStatus != null && + this.DeleteStatus.Equals(input.DeleteStatus)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Phase != null) + hashCode = hashCode * 59 + this.Phase.GetHashCode(); + if (this.JobID != null) + hashCode = hashCode * 59 + this.JobID.GetHashCode(); + if (this.Reason != null) + hashCode = hashCode * 59 + this.Reason.GetHashCode(); + if (this.Message != null) + hashCode = hashCode * 59 + this.Message.GetHashCode(); + if (this.Endpoints != null) + hashCode = hashCode * 59 + this.Endpoints.GetHashCode(); + if (this.IsLocked != null) + hashCode = hashCode * 59 + this.IsLocked.GetHashCode(); + if (this.LockScene != null) + hashCode = hashCode * 59 + this.LockScene.GetHashCode(); + if (this.LockSource != null) + hashCode = hashCode * 59 + this.LockSource.GetHashCode(); + if (this.LockSourceId != null) + hashCode = hashCode * 59 + this.LockSourceId.GetHashCode(); + if (this.DeleteOption != null) + hashCode = hashCode * 59 + this.DeleteOption.GetHashCode(); + if (this.DeleteStatus != null) + hashCode = hashCode * 59 + this.DeleteStatus.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotConfigurationItem.cs b/Services/Cce/V3/Model/AutopilotConfigurationItem.cs new file mode 100644 index 000000000..b0d306b6b --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotConfigurationItem.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotConfigurationItem + { + + /// + /// 组件配置项名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 组件配置项值 + /// + [JsonProperty("value", NullValueHandling = NullValueHandling.Ignore)] + public Object Value { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotConfigurationItem {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotConfigurationItem); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotConfigurationItem input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotContainerNetwork.cs b/Services/Cce/V3/Model/AutopilotContainerNetwork.cs new file mode 100644 index 000000000..b12db9fe2 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotContainerNetwork.cs @@ -0,0 +1,185 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Container network parameters. + /// + public class AutopilotContainerNetwork + { + /// + /// 容器网络类型 - eni:云原生网络2.0,深度整合VPC原生ENI弹性网卡能力,采用VPC网段分配容器地址,支持ELB直通容器,享有高性能,创建集群时指定。 + /// + /// 容器网络类型 - eni:云原生网络2.0,深度整合VPC原生ENI弹性网卡能力,采用VPC网段分配容器地址,支持ELB直通容器,享有高性能,创建集群时指定。 + [JsonConverter(typeof(EnumClassConverter))] + public class ModeEnum + { + /// + /// Enum ENI for value: eni + /// + public static readonly ModeEnum ENI = new ModeEnum("eni"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "eni", ENI }, + }; + + private string _value; + + public ModeEnum() + { + + } + + public ModeEnum(string value) + { + _value = value; + } + + public static ModeEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as ModeEnum)) + { + return true; + } + + return false; + } + + public bool Equals(ModeEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(ModeEnum a, ModeEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(ModeEnum a, ModeEnum b) + { + return !(a == b); + } + } + + + /// + /// 容器网络类型 - eni:云原生网络2.0,深度整合VPC原生ENI弹性网卡能力,采用VPC网段分配容器地址,支持ELB直通容器,享有高性能,创建集群时指定。 + /// + [JsonProperty("mode", NullValueHandling = NullValueHandling.Ignore)] + public ModeEnum Mode { get; set; } + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotContainerNetwork {\n"); + sb.Append(" mode: ").Append(Mode).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotContainerNetwork); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotContainerNetwork input) + { + if (input == null) + return false; + + return + ( + this.Mode == input.Mode || + (this.Mode != null && + this.Mode.Equals(input.Mode)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Mode != null) + hashCode = hashCode * 59 + this.Mode.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotEniNetwork.cs b/Services/Cce/V3/Model/AutopilotEniNetwork.cs new file mode 100644 index 000000000..c682a8929 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotEniNetwork.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// ENI网络配置。 + /// + public class AutopilotEniNetwork + { + + /// + /// ENI所在子网的IPv4子网ID列表。获取方法如下: - 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找IPv4子网ID。 - 方法2:通过虚拟私有云服务的查询子网列表接口查询。 [链接请参见[查询子网列表](https://support.huaweicloud.com/api-vpc/vpc_subnet01_0003.html)](tag:hws) [链接请参见[查询子网列表](https://support.huaweicloud.com/intl/zh-cn/api-vpc/vpc_subnet01_0003.html)](tag:hws_hk) + /// + [JsonProperty("subnets", NullValueHandling = NullValueHandling.Ignore)] + public List Subnets { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotEniNetwork {\n"); + sb.Append(" subnets: ").Append(Subnets).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotEniNetwork); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotEniNetwork input) + { + if (input == null) + return false; + + return + ( + this.Subnets == input.Subnets || + this.Subnets != null && + input.Subnets != null && + this.Subnets.SequenceEqual(input.Subnets) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Subnets != null) + hashCode = hashCode * 59 + this.Subnets.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotEniNetworkUpdate.cs b/Services/Cce/V3/Model/AutopilotEniNetworkUpdate.cs new file mode 100644 index 000000000..57dcfadfb --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotEniNetworkUpdate.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotEniNetworkUpdate + { + + /// + /// IPv4子网ID列表。 只允许新增子网,不可删除已有子网,请谨慎选择。 请求体中需包含所有已经存在的subnet。 + /// + [JsonProperty("subnets", NullValueHandling = NullValueHandling.Ignore)] + public List Subnets { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotEniNetworkUpdate {\n"); + sb.Append(" subnets: ").Append(Subnets).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotEniNetworkUpdate); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotEniNetworkUpdate input) + { + if (input == null) + return false; + + return + ( + this.Subnets == input.Subnets || + this.Subnets != null && + input.Subnets != null && + this.Subnets.SequenceEqual(input.Subnets) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Subnets != null) + hashCode = hashCode * 59 + this.Subnets.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotHostNetwork.cs b/Services/Cce/V3/Model/AutopilotHostNetwork.cs new file mode 100644 index 000000000..0bca7fc12 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotHostNetwork.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Node network parameters. + /// + public class AutopilotHostNetwork + { + + /// + /// 用于创建控制节点的VPC的ID。 获取方法如下: - 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。 - 方法2:通过虚拟私有云服务的API接口查询。 [链接请参见[查询VPC列表](https://support.huaweicloud.com/api-vpc/vpc_api01_0003.html)](tag:hws) [链接请参见[查询VPC列表](https://support.huaweicloud.com/intl/zh-cn/api-vpc/vpc_api01_0003.html)](tag:hws_hk) + /// + [JsonProperty("vpc", NullValueHandling = NullValueHandling.Ignore)] + public string Vpc { get; set; } + + /// + /// 用于创建控制节点的subnet的网络ID。获取方法如下: - 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 - 方法2:通过虚拟私有云服务的查询子网列表接口查询。 [链接请参见[查询子网列表](https://support.huaweicloud.com/api-vpc/vpc_subnet01_0003.html)](tag:hws) [链接请参见[查询子网列表](https://support.huaweicloud.com/intl/zh-cn/api-vpc/vpc_subnet01_0003.html)](tag:hws_hk) + /// + [JsonProperty("subnet", NullValueHandling = NullValueHandling.Ignore)] + public string Subnet { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotHostNetwork {\n"); + sb.Append(" vpc: ").Append(Vpc).Append("\n"); + sb.Append(" subnet: ").Append(Subnet).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotHostNetwork); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotHostNetwork input) + { + if (input == null) + return false; + + return + ( + this.Vpc == input.Vpc || + (this.Vpc != null && + this.Vpc.Equals(input.Vpc)) + ) && + ( + this.Subnet == input.Subnet || + (this.Subnet != null && + this.Subnet.Equals(input.Subnet)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Vpc != null) + hashCode = hashCode * 59 + this.Vpc.GetHashCode(); + if (this.Subnet != null) + hashCode = hashCode * 59 + this.Subnet.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotNetworkSubnet.cs b/Services/Cce/V3/Model/AutopilotNetworkSubnet.cs new file mode 100644 index 000000000..9d4b0d593 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotNetworkSubnet.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// ENI网络配置,创建集群指定subnets字段使用时必填。 + /// + public class AutopilotNetworkSubnet + { + + /// + /// 用于创建控制节点的subnet的IPv4子网ID(暂不支持IPv6)。获取方法如下: - 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找IPv4子网ID。 - 方法2:通过虚拟私有云服务的查询子网列表接口查询。 [链接请参见[查询子网列表](https://support.huaweicloud.com/api-vpc/vpc_subnet01_0003.html)](tag:hws) [链接请参见[查询子网列表](https://support.huaweicloud.com/intl/zh-cn/api-vpc/vpc_subnet01_0003.html)](tag:hws_hk) + /// + [JsonProperty("subnetID", NullValueHandling = NullValueHandling.Ignore)] + public string SubnetID { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotNetworkSubnet {\n"); + sb.Append(" subnetID: ").Append(SubnetID).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotNetworkSubnet); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotNetworkSubnet input) + { + if (input == null) + return false; + + return + ( + this.SubnetID == input.SubnetID || + (this.SubnetID != null && + this.SubnetID.Equals(input.SubnetID)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.SubnetID != null) + hashCode = hashCode * 59 + this.SubnetID.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotPackageConfiguration.cs b/Services/Cce/V3/Model/AutopilotPackageConfiguration.cs new file mode 100644 index 000000000..984afac01 --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotPackageConfiguration.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotPackageConfiguration + { + + /// + /// 组件名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 组件配置项 + /// + [JsonProperty("configurations", NullValueHandling = NullValueHandling.Ignore)] + public List Configurations { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotPackageConfiguration {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" configurations: ").Append(Configurations).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotPackageConfiguration); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotPackageConfiguration input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Configurations == input.Configurations || + this.Configurations != null && + input.Configurations != null && + this.Configurations.SequenceEqual(input.Configurations) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Configurations != null) + hashCode = hashCode * 59 + this.Configurations.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotResourceTag.cs b/Services/Cce/V3/Model/AutopilotResourceTag.cs new file mode 100644 index 000000000..bf6f85cfd --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotResourceTag.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// CCE资源标签 + /// + public class AutopilotResourceTag + { + + /// + /// Key值。 - 不能为空,最多支持128个字符 - 可用UTF-8格式表示的汉字、字母、数字和空格 - 支持部分特殊字符:_.:/=+-@ - 不能以\"\\_sys\\_\"开头 + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + /// + /// Value值。 - 可以为空但不能缺省,最多支持255个字符 - 可用UTF-8格式表示的汉字、字母、数字和空格 - 支持部分特殊字符:_.:/=+-@ + /// + [JsonProperty("value", NullValueHandling = NullValueHandling.Ignore)] + public string Value { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotResourceTag {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append(" value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotResourceTag); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotResourceTag input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/AutopilotServiceNetwork.cs b/Services/Cce/V3/Model/AutopilotServiceNetwork.cs new file mode 100644 index 000000000..48e348cec --- /dev/null +++ b/Services/Cce/V3/Model/AutopilotServiceNetwork.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class AutopilotServiceNetwork + { + + /// + /// kubernetes clusterIP IPv4 CIDR取值范围。创建集群时若未传参,默认为\"10.247.0.0/16\"。 + /// + [JsonProperty("IPv4CIDR", NullValueHandling = NullValueHandling.Ignore)] + public string IPv4CIDR { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AutopilotServiceNetwork {\n"); + sb.Append(" iPv4CIDR: ").Append(IPv4CIDR).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as AutopilotServiceNetwork); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(AutopilotServiceNetwork input) + { + if (input == null) + return false; + + return + ( + this.IPv4CIDR == input.IPv4CIDR || + (this.IPv4CIDR != null && + this.IPv4CIDR.Equals(input.IPv4CIDR)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.IPv4CIDR != null) + hashCode = hashCode * 59 + this.IPv4CIDR.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsRequest.cs b/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsRequest.cs new file mode 100644 index 000000000..c4aae9b39 --- /dev/null +++ b/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class BatchCreateAutopilotClusterTagsRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public BatchCreateClusterTagsRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class BatchCreateAutopilotClusterTagsRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as BatchCreateAutopilotClusterTagsRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(BatchCreateAutopilotClusterTagsRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsResponse.cs b/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsResponse.cs new file mode 100644 index 000000000..a8ef2c59e --- /dev/null +++ b/Services/Cce/V3/Model/BatchCreateAutopilotClusterTagsResponse.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class BatchCreateAutopilotClusterTagsResponse : SdkResponse + { + + + + } +} diff --git a/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsRequest.cs b/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsRequest.cs new file mode 100644 index 000000000..d1cb57760 --- /dev/null +++ b/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class BatchDeleteAutopilotClusterTagsRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public BatchDeleteClusterTagsRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class BatchDeleteAutopilotClusterTagsRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as BatchDeleteAutopilotClusterTagsRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(BatchDeleteAutopilotClusterTagsRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsResponse.cs b/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsResponse.cs new file mode 100644 index 000000000..e7ae74fab --- /dev/null +++ b/Services/Cce/V3/Model/BatchDeleteAutopilotClusterTagsResponse.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class BatchDeleteAutopilotClusterTagsResponse : SdkResponse + { + + + + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotAddonInstanceRequest.cs b/Services/Cce/V3/Model/CreateAutopilotAddonInstanceRequest.cs new file mode 100644 index 000000000..be3eeb08f --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotAddonInstanceRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotAddonInstanceRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public InstanceRequest Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotAddonInstanceRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotAddonInstanceRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotAddonInstanceRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotAddonInstanceResponse.cs b/Services/Cce/V3/Model/CreateAutopilotAddonInstanceResponse.cs new file mode 100644 index 000000000..fecb2c297 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotAddonInstanceResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotAddonInstanceResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AddonMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public InstanceSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AddonInstanceStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotAddonInstanceResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotAddonInstanceResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotAddonInstanceResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotRequest.cs b/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotRequest.cs new file mode 100644 index 000000000..af8e5aedd --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotClusterMasterSnapshotRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotClusterMasterSnapshotRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotClusterMasterSnapshotRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotClusterMasterSnapshotRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotResponse.cs b/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotResponse.cs new file mode 100644 index 000000000..f12dc601e --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotClusterMasterSnapshotResponse.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotClusterMasterSnapshotResponse : SdkResponse + { + + /// + /// 任务ID + /// + [JsonProperty("uid", NullValueHandling = NullValueHandling.Ignore)] + public string Uid { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public SnapshotCluserResponseMetadata Metadata { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotClusterMasterSnapshotResponse {\n"); + sb.Append(" uid: ").Append(Uid).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotClusterMasterSnapshotResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotClusterMasterSnapshotResponse input) + { + if (input == null) + return false; + + return + ( + this.Uid == input.Uid || + (this.Uid != null && + this.Uid.Equals(input.Uid)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Uid != null) + hashCode = hashCode * 59 + this.Uid.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotClusterRequest.cs b/Services/Cce/V3/Model/CreateAutopilotClusterRequest.cs new file mode 100644 index 000000000..432ec4caa --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotClusterRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotClusterRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotCluster Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotClusterRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotClusterRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotClusterRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotClusterResponse.cs b/Services/Cce/V3/Model/CreateAutopilotClusterResponse.cs new file mode 100644 index 000000000..2ac1eabb6 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotClusterResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotClusterResponse : SdkResponse + { + + /// + /// API类型,固定值“Cluster”或“cluster”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotClusterResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotClusterResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotClusterResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertRequest.cs b/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertRequest.cs new file mode 100644 index 000000000..53e68f04e --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotKubernetesClusterCertRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public CertDuration Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotKubernetesClusterCertRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotKubernetesClusterCertRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotKubernetesClusterCertRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertResponse.cs b/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertResponse.cs new file mode 100644 index 000000000..42c678643 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotKubernetesClusterCertResponse.cs @@ -0,0 +1,179 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotKubernetesClusterCertResponse : SdkResponse + { + + /// + /// API类型,固定值“Config”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v1”。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 当前未使用该字段,当前默认为空。 + /// + [JsonProperty("preferences", NullValueHandling = NullValueHandling.Ignore)] + public Object Preferences { get; set; } + + /// + /// 集群列表。 + /// + [JsonProperty("clusters", NullValueHandling = NullValueHandling.Ignore)] + public List Clusters { get; set; } + + /// + /// 存放了指定用户的一些证书信息和ClientKey信息。 + /// + [JsonProperty("users", NullValueHandling = NullValueHandling.Ignore)] + public List Users { get; set; } + + /// + /// 上下文列表。 + /// + [JsonProperty("contexts", NullValueHandling = NullValueHandling.Ignore)] + public List Contexts { get; set; } + + /// + /// 当前上下文,若存在publicIp(虚拟机弹性IP)时为 external; 若不存在publicIp为 internal。 + /// + [JsonProperty("current-context", NullValueHandling = NullValueHandling.Ignore)] + public string CurrentContext { get; set; } + + /// + /// + /// + [SDKProperty("Port-ID", IsHeader = true)] + [JsonProperty("Port-ID", NullValueHandling = NullValueHandling.Ignore)] + public string PortID { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotKubernetesClusterCertResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" preferences: ").Append(Preferences).Append("\n"); + sb.Append(" clusters: ").Append(Clusters).Append("\n"); + sb.Append(" users: ").Append(Users).Append("\n"); + sb.Append(" contexts: ").Append(Contexts).Append("\n"); + sb.Append(" currentContext: ").Append(CurrentContext).Append("\n"); + sb.Append(" portID: ").Append(PortID).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotKubernetesClusterCertResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotKubernetesClusterCertResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Preferences == input.Preferences || + (this.Preferences != null && + this.Preferences.Equals(input.Preferences)) + ) && + ( + this.Clusters == input.Clusters || + this.Clusters != null && + input.Clusters != null && + this.Clusters.SequenceEqual(input.Clusters) + ) && + ( + this.Users == input.Users || + this.Users != null && + input.Users != null && + this.Users.SequenceEqual(input.Users) + ) && + ( + this.Contexts == input.Contexts || + this.Contexts != null && + input.Contexts != null && + this.Contexts.SequenceEqual(input.Contexts) + ) && + ( + this.CurrentContext == input.CurrentContext || + (this.CurrentContext != null && + this.CurrentContext.Equals(input.CurrentContext)) + ) && + ( + this.PortID == input.PortID || + (this.PortID != null && + this.PortID.Equals(input.PortID)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Preferences != null) + hashCode = hashCode * 59 + this.Preferences.GetHashCode(); + if (this.Clusters != null) + hashCode = hashCode * 59 + this.Clusters.GetHashCode(); + if (this.Users != null) + hashCode = hashCode * 59 + this.Users.GetHashCode(); + if (this.Contexts != null) + hashCode = hashCode * 59 + this.Contexts.GetHashCode(); + if (this.CurrentContext != null) + hashCode = hashCode * 59 + this.CurrentContext.GetHashCode(); + if (this.PortID != null) + hashCode = hashCode * 59 + this.PortID.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotPostCheckRequest.cs b/Services/Cce/V3/Model/CreateAutopilotPostCheckRequest.cs new file mode 100644 index 000000000..25b133546 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotPostCheckRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotPostCheckRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public PostcheckClusterRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotPostCheckRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotPostCheckRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotPostCheckRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotPostCheckResponse.cs b/Services/Cce/V3/Model/CreateAutopilotPostCheckResponse.cs new file mode 100644 index 000000000..f9a28bb65 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotPostCheckResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotPostCheckResponse : SdkResponse + { + + /// + /// API版本 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public PostcheckCluserResponseMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public PostcheckSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public PostcheckClusterResponseBodyStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotPostCheckResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotPostCheckResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotPostCheckResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotPreCheckRequest.cs b/Services/Cce/V3/Model/CreateAutopilotPreCheckRequest.cs new file mode 100644 index 000000000..875947694 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotPreCheckRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotPreCheckRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckClusterRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotPreCheckRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotPreCheckRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotPreCheckRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotPreCheckResponse.cs b/Services/Cce/V3/Model/CreateAutopilotPreCheckResponse.cs new file mode 100644 index 000000000..a6300fc40 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotPreCheckResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotPreCheckResponse : SdkResponse + { + + /// + /// API版本 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckCluserResponseMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotPreCheckResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotPreCheckResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotPreCheckResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotReleaseRequest.cs b/Services/Cce/V3/Model/CreateAutopilotReleaseRequest.cs new file mode 100644 index 000000000..11a0a8e2b --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotReleaseRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotReleaseRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public CreateReleaseReqBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotReleaseRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotReleaseRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotReleaseRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotReleaseResponse.cs b/Services/Cce/V3/Model/CreateAutopilotReleaseResponse.cs new file mode 100644 index 000000000..008e706a1 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotReleaseResponse.cs @@ -0,0 +1,287 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotReleaseResponse : SdkResponse + { + + /// + /// 模板名称 + /// + [JsonProperty("chart_name", NullValueHandling = NullValueHandling.Ignore)] + public string ChartName { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("chart_public", NullValueHandling = NullValueHandling.Ignore)] + public bool? ChartPublic { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("chart_version", NullValueHandling = NullValueHandling.Ignore)] + public string ChartVersion { get; set; } + + /// + /// 集群ID + /// + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 集群名称 + /// + [JsonProperty("cluster_name", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterName { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 模板实例描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板实例名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 模板实例参数 + /// + [JsonProperty("parameters", NullValueHandling = NullValueHandling.Ignore)] + public string Parameters { get; set; } + + /// + /// 模板实例需要的资源 + /// + [JsonProperty("resources", NullValueHandling = NullValueHandling.Ignore)] + public string Resources { get; set; } + + /// + /// 模板实例状态 + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public string Status { get; set; } + + /// + /// 模板实例状态描述 + /// + [JsonProperty("status_description", NullValueHandling = NullValueHandling.Ignore)] + public string StatusDescription { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + /// + /// 模板实例的值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板实例版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public int? Version { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotReleaseResponse {\n"); + sb.Append(" chartName: ").Append(ChartName).Append("\n"); + sb.Append(" chartPublic: ").Append(ChartPublic).Append("\n"); + sb.Append(" chartVersion: ").Append(ChartVersion).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" clusterName: ").Append(ClusterName).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" parameters: ").Append(Parameters).Append("\n"); + sb.Append(" resources: ").Append(Resources).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" statusDescription: ").Append(StatusDescription).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotReleaseResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotReleaseResponse input) + { + if (input == null) + return false; + + return + ( + this.ChartName == input.ChartName || + (this.ChartName != null && + this.ChartName.Equals(input.ChartName)) + ) && + ( + this.ChartPublic == input.ChartPublic || + (this.ChartPublic != null && + this.ChartPublic.Equals(input.ChartPublic)) + ) && + ( + this.ChartVersion == input.ChartVersion || + (this.ChartVersion != null && + this.ChartVersion.Equals(input.ChartVersion)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.ClusterName == input.ClusterName || + (this.ClusterName != null && + this.ClusterName.Equals(input.ClusterName)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.Parameters == input.Parameters || + (this.Parameters != null && + this.Parameters.Equals(input.Parameters)) + ) && + ( + this.Resources == input.Resources || + (this.Resources != null && + this.Resources.Equals(input.Resources)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.StatusDescription == input.StatusDescription || + (this.StatusDescription != null && + this.StatusDescription.Equals(input.StatusDescription)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartName != null) + hashCode = hashCode * 59 + this.ChartName.GetHashCode(); + if (this.ChartPublic != null) + hashCode = hashCode * 59 + this.ChartPublic.GetHashCode(); + if (this.ChartVersion != null) + hashCode = hashCode * 59 + this.ChartVersion.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.ClusterName != null) + hashCode = hashCode * 59 + this.ClusterName.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.Parameters != null) + hashCode = hashCode * 59 + this.Parameters.GetHashCode(); + if (this.Resources != null) + hashCode = hashCode * 59 + this.Resources.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.StatusDescription != null) + hashCode = hashCode * 59 + this.StatusDescription.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowRequest.cs b/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowRequest.cs new file mode 100644 index 000000000..22f9a78c6 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class CreateAutopilotUpgradeWorkFlowRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public CreateUpgradeWorkFlowRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotUpgradeWorkFlowRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotUpgradeWorkFlowRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotUpgradeWorkFlowRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowResponse.cs b/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowResponse.cs new file mode 100644 index 000000000..02e7f0d97 --- /dev/null +++ b/Services/Cce/V3/Model/CreateAutopilotUpgradeWorkFlowResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class CreateAutopilotUpgradeWorkFlowResponse : SdkResponse + { + + /// + /// API类型,固定值“WorkFlowTask”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateAutopilotUpgradeWorkFlowResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateAutopilotUpgradeWorkFlowResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateAutopilotUpgradeWorkFlowResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceRequest.cs b/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceRequest.cs new file mode 100644 index 000000000..fc446330a --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class DeleteAutopilotAddonInstanceRequest + { + + /// + /// 插件实例id + /// + [SDKProperty("id", IsPath = true)] + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 集群 ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml) + /// + [SDKProperty("cluster_id", IsQuery = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotAddonInstanceRequest {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotAddonInstanceRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotAddonInstanceRequest input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceResponse.cs b/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceResponse.cs new file mode 100644 index 000000000..07ad89e34 --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotAddonInstanceResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class DeleteAutopilotAddonInstanceResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public string Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotAddonInstanceResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotAddonInstanceResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotAddonInstanceResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotChartRequest.cs b/Services/Cce/V3/Model/DeleteAutopilotChartRequest.cs new file mode 100644 index 000000000..8a9e8732d --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotChartRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class DeleteAutopilotChartRequest + { + + /// + /// 模板的ID + /// + [SDKProperty("chart_id", IsPath = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotChartRequest {\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotChartRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotChartRequest input) + { + if (input == null) + return false; + + return + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotChartResponse.cs b/Services/Cce/V3/Model/DeleteAutopilotChartResponse.cs new file mode 100644 index 000000000..1666af1be --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotChartResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class DeleteAutopilotChartResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public string Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotChartResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotChartResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotChartResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotClusterRequest.cs b/Services/Cce/V3/Model/DeleteAutopilotClusterRequest.cs new file mode 100644 index 000000000..f3d4c7778 --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotClusterRequest.cs @@ -0,0 +1,960 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class DeleteAutopilotClusterRequest + { + /// + /// 是否删除SFS Turbo(极速文件存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + /// 是否删除SFS Turbo(极速文件存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteEfsEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly DeleteEfsEnum TRUE = new DeleteEfsEnum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly DeleteEfsEnum BLOCK = new DeleteEfsEnum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly DeleteEfsEnum TRY = new DeleteEfsEnum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly DeleteEfsEnum FALSE = new DeleteEfsEnum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly DeleteEfsEnum SKIP = new DeleteEfsEnum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public DeleteEfsEnum() + { + + } + + public DeleteEfsEnum(string value) + { + _value = value; + } + + public static DeleteEfsEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteEfsEnum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteEfsEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteEfsEnum a, DeleteEfsEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteEfsEnum a, DeleteEfsEnum b) + { + return !(a == b); + } + } + + /// + /// 是否删除eni ports(原生弹性网卡), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + /// + /// 是否删除eni ports(原生弹性网卡), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteEniEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly DeleteEniEnum TRUE = new DeleteEniEnum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly DeleteEniEnum BLOCK = new DeleteEniEnum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly DeleteEniEnum TRY = new DeleteEniEnum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly DeleteEniEnum FALSE = new DeleteEniEnum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly DeleteEniEnum SKIP = new DeleteEniEnum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public DeleteEniEnum() + { + + } + + public DeleteEniEnum(string value) + { + _value = value; + } + + public static DeleteEniEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteEniEnum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteEniEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteEniEnum a, DeleteEniEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteEniEnum a, DeleteEniEnum b) + { + return !(a == b); + } + } + + /// + /// 是否删除elb(弹性负载均衡)等集群Service/Ingress相关资源。 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + /// + /// 是否删除elb(弹性负载均衡)等集群Service/Ingress相关资源。 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteNetEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly DeleteNetEnum TRUE = new DeleteNetEnum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly DeleteNetEnum BLOCK = new DeleteNetEnum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly DeleteNetEnum TRY = new DeleteNetEnum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly DeleteNetEnum FALSE = new DeleteNetEnum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly DeleteNetEnum SKIP = new DeleteNetEnum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public DeleteNetEnum() + { + + } + + public DeleteNetEnum(string value) + { + _value = value; + } + + public static DeleteNetEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteNetEnum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteNetEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteNetEnum a, DeleteNetEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteNetEnum a, DeleteNetEnum b) + { + return !(a == b); + } + } + + /// + /// 是否删除obs(对象存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + /// 是否删除obs(对象存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteObsEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly DeleteObsEnum TRUE = new DeleteObsEnum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly DeleteObsEnum BLOCK = new DeleteObsEnum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly DeleteObsEnum TRY = new DeleteObsEnum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly DeleteObsEnum FALSE = new DeleteObsEnum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly DeleteObsEnum SKIP = new DeleteObsEnum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public DeleteObsEnum() + { + + } + + public DeleteObsEnum(string value) + { + _value = value; + } + + public static DeleteObsEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteObsEnum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteObsEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteObsEnum a, DeleteObsEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteObsEnum a, DeleteObsEnum b) + { + return !(a == b); + } + } + + /// + /// 是否删除sfs3.0(文件存储卷3.0), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + /// 是否删除sfs3.0(文件存储卷3.0), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteSfs30Enum + { + /// + /// Enum TRUE for value: true + /// + public static readonly DeleteSfs30Enum TRUE = new DeleteSfs30Enum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly DeleteSfs30Enum BLOCK = new DeleteSfs30Enum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly DeleteSfs30Enum TRY = new DeleteSfs30Enum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly DeleteSfs30Enum FALSE = new DeleteSfs30Enum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly DeleteSfs30Enum SKIP = new DeleteSfs30Enum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public DeleteSfs30Enum() + { + + } + + public DeleteSfs30Enum(string value) + { + _value = value; + } + + public static DeleteSfs30Enum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteSfs30Enum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteSfs30Enum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteSfs30Enum a, DeleteSfs30Enum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteSfs30Enum a, DeleteSfs30Enum b) + { + return !(a == b); + } + } + + /// + /// 是否删除LTS LogStream(日志流), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + /// 是否删除LTS LogStream(日志流), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + [JsonConverter(typeof(EnumClassConverter))] + public class LtsReclaimPolicyEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly LtsReclaimPolicyEnum TRUE = new LtsReclaimPolicyEnum("true"); + + /// + /// Enum BLOCK for value: block + /// + public static readonly LtsReclaimPolicyEnum BLOCK = new LtsReclaimPolicyEnum("block"); + + /// + /// Enum TRY for value: try + /// + public static readonly LtsReclaimPolicyEnum TRY = new LtsReclaimPolicyEnum("try"); + + /// + /// Enum FALSE for value: false + /// + public static readonly LtsReclaimPolicyEnum FALSE = new LtsReclaimPolicyEnum("false"); + + /// + /// Enum SKIP for value: skip + /// + public static readonly LtsReclaimPolicyEnum SKIP = new LtsReclaimPolicyEnum("skip"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "block", BLOCK }, + { "try", TRY }, + { "false", FALSE }, + { "skip", SKIP }, + }; + + private string _value; + + public LtsReclaimPolicyEnum() + { + + } + + public LtsReclaimPolicyEnum(string value) + { + _value = value; + } + + public static LtsReclaimPolicyEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as LtsReclaimPolicyEnum)) + { + return true; + } + + return false; + } + + public bool Equals(LtsReclaimPolicyEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(LtsReclaimPolicyEnum a, LtsReclaimPolicyEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(LtsReclaimPolicyEnum a, LtsReclaimPolicyEnum b) + { + return !(a == b); + } + } + + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 是否删除SFS Turbo(极速文件存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + [SDKProperty("delete_efs", IsQuery = true)] + [JsonProperty("delete_efs", NullValueHandling = NullValueHandling.Ignore)] + public DeleteEfsEnum DeleteEfs { get; set; } + /// + /// 是否删除eni ports(原生弹性网卡), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + /// + [SDKProperty("delete_eni", IsQuery = true)] + [JsonProperty("delete_eni", NullValueHandling = NullValueHandling.Ignore)] + public DeleteEniEnum DeleteEni { get; set; } + /// + /// 是否删除elb(弹性负载均衡)等集群Service/Ingress相关资源。 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程,默认选项) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程) + /// + [SDKProperty("delete_net", IsQuery = true)] + [JsonProperty("delete_net", NullValueHandling = NullValueHandling.Ignore)] + public DeleteNetEnum DeleteNet { get; set; } + /// + /// 是否删除obs(对象存储卷), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + [SDKProperty("delete_obs", IsQuery = true)] + [JsonProperty("delete_obs", NullValueHandling = NullValueHandling.Ignore)] + public DeleteObsEnum DeleteObs { get; set; } + /// + /// 是否删除sfs3.0(文件存储卷3.0), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + [SDKProperty("delete_sfs30", IsQuery = true)] + [JsonProperty("delete_sfs30", NullValueHandling = NullValueHandling.Ignore)] + public DeleteSfs30Enum DeleteSfs30 { get; set; } + /// + /// 是否删除LTS LogStream(日志流), 枚举取值: - true或block (执行删除流程,失败则阻塞后续流程) - try (执行删除流程,失败则忽略,并继续执行后续流程) - false或skip (跳过删除流程,默认选项) + /// + [SDKProperty("lts_reclaim_policy", IsQuery = true)] + [JsonProperty("lts_reclaim_policy", NullValueHandling = NullValueHandling.Ignore)] + public LtsReclaimPolicyEnum LtsReclaimPolicy { get; set; } + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotClusterRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" deleteEfs: ").Append(DeleteEfs).Append("\n"); + sb.Append(" deleteEni: ").Append(DeleteEni).Append("\n"); + sb.Append(" deleteNet: ").Append(DeleteNet).Append("\n"); + sb.Append(" deleteObs: ").Append(DeleteObs).Append("\n"); + sb.Append(" deleteSfs30: ").Append(DeleteSfs30).Append("\n"); + sb.Append(" ltsReclaimPolicy: ").Append(LtsReclaimPolicy).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotClusterRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotClusterRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.DeleteEfs == input.DeleteEfs || + (this.DeleteEfs != null && + this.DeleteEfs.Equals(input.DeleteEfs)) + ) && + ( + this.DeleteEni == input.DeleteEni || + (this.DeleteEni != null && + this.DeleteEni.Equals(input.DeleteEni)) + ) && + ( + this.DeleteNet == input.DeleteNet || + (this.DeleteNet != null && + this.DeleteNet.Equals(input.DeleteNet)) + ) && + ( + this.DeleteObs == input.DeleteObs || + (this.DeleteObs != null && + this.DeleteObs.Equals(input.DeleteObs)) + ) && + ( + this.DeleteSfs30 == input.DeleteSfs30 || + (this.DeleteSfs30 != null && + this.DeleteSfs30.Equals(input.DeleteSfs30)) + ) && + ( + this.LtsReclaimPolicy == input.LtsReclaimPolicy || + (this.LtsReclaimPolicy != null && + this.LtsReclaimPolicy.Equals(input.LtsReclaimPolicy)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.DeleteEfs != null) + hashCode = hashCode * 59 + this.DeleteEfs.GetHashCode(); + if (this.DeleteEni != null) + hashCode = hashCode * 59 + this.DeleteEni.GetHashCode(); + if (this.DeleteNet != null) + hashCode = hashCode * 59 + this.DeleteNet.GetHashCode(); + if (this.DeleteObs != null) + hashCode = hashCode * 59 + this.DeleteObs.GetHashCode(); + if (this.DeleteSfs30 != null) + hashCode = hashCode * 59 + this.DeleteSfs30.GetHashCode(); + if (this.LtsReclaimPolicy != null) + hashCode = hashCode * 59 + this.LtsReclaimPolicy.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotClusterResponse.cs b/Services/Cce/V3/Model/DeleteAutopilotClusterResponse.cs new file mode 100644 index 000000000..c0ec9dba3 --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotClusterResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class DeleteAutopilotClusterResponse : SdkResponse + { + + /// + /// API类型,固定值“Cluster”或“cluster”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotClusterResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotClusterResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotClusterResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotReleaseRequest.cs b/Services/Cce/V3/Model/DeleteAutopilotReleaseRequest.cs new file mode 100644 index 000000000..745dbc944 --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotReleaseRequest.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class DeleteAutopilotReleaseRequest + { + + /// + /// 模板实例名称 + /// + [SDKProperty("name", IsPath = true)] + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [SDKProperty("namespace", IsPath = true)] + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotReleaseRequest {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotReleaseRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotReleaseRequest input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DeleteAutopilotReleaseResponse.cs b/Services/Cce/V3/Model/DeleteAutopilotReleaseResponse.cs new file mode 100644 index 000000000..b23d9a851 --- /dev/null +++ b/Services/Cce/V3/Model/DeleteAutopilotReleaseResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class DeleteAutopilotReleaseResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public string Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteAutopilotReleaseResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteAutopilotReleaseResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteAutopilotReleaseResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DownloadAutopilotChartRequest.cs b/Services/Cce/V3/Model/DownloadAutopilotChartRequest.cs new file mode 100644 index 000000000..3b999bdd3 --- /dev/null +++ b/Services/Cce/V3/Model/DownloadAutopilotChartRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class DownloadAutopilotChartRequest + { + + /// + /// 模板的ID + /// + [SDKProperty("chart_id", IsPath = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DownloadAutopilotChartRequest {\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DownloadAutopilotChartRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DownloadAutopilotChartRequest input) + { + if (input == null) + return false; + + return + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/DownloadAutopilotChartResponse.cs b/Services/Cce/V3/Model/DownloadAutopilotChartResponse.cs new file mode 100644 index 000000000..76f661a24 --- /dev/null +++ b/Services/Cce/V3/Model/DownloadAutopilotChartResponse.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class DownloadAutopilotChartResponse : SdkStreamResponse + { + + + + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotAddonInstancesRequest.cs b/Services/Cce/V3/Model/ListAutopilotAddonInstancesRequest.cs new file mode 100644 index 000000000..f2e0a64af --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotAddonInstancesRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotAddonInstancesRequest + { + + /// + /// 集群 ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml) + /// + [SDKProperty("cluster_id", IsQuery = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotAddonInstancesRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotAddonInstancesRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotAddonInstancesRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotAddonInstancesResponse.cs b/Services/Cce/V3/Model/ListAutopilotAddonInstancesResponse.cs new file mode 100644 index 000000000..8f9684f7a --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotAddonInstancesResponse.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotAddonInstancesResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 插件实例列表 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotAddonInstancesResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotAddonInstancesResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotAddonInstancesResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotAddonTemplatesRequest.cs b/Services/Cce/V3/Model/ListAutopilotAddonTemplatesRequest.cs new file mode 100644 index 000000000..deeccf5dc --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotAddonTemplatesRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotAddonTemplatesRequest + { + + /// + /// 指定的插件名称或插件别名,不填写则查询列表。 + /// + [SDKProperty("addon_template_name", IsQuery = true)] + [JsonProperty("addon_template_name", NullValueHandling = NullValueHandling.Ignore)] + public string AddonTemplateName { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotAddonTemplatesRequest {\n"); + sb.Append(" addonTemplateName: ").Append(AddonTemplateName).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotAddonTemplatesRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotAddonTemplatesRequest input) + { + if (input == null) + return false; + + return + ( + this.AddonTemplateName == input.AddonTemplateName || + (this.AddonTemplateName != null && + this.AddonTemplateName.Equals(input.AddonTemplateName)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AddonTemplateName != null) + hashCode = hashCode * 59 + this.AddonTemplateName.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotAddonTemplatesResponse.cs b/Services/Cce/V3/Model/ListAutopilotAddonTemplatesResponse.cs new file mode 100644 index 000000000..12fd97f4c --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotAddonTemplatesResponse.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotAddonTemplatesResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 插件模板列表 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotAddonTemplatesResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotAddonTemplatesResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotAddonTemplatesResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotChartsRequest.cs b/Services/Cce/V3/Model/ListAutopilotChartsRequest.cs new file mode 100644 index 000000000..5adabb38a --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotChartsRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotChartsRequest + { + + + + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotChartsResponse.cs b/Services/Cce/V3/Model/ListAutopilotChartsResponse.cs new file mode 100644 index 000000000..a1eebf56e --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotChartsResponse.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotChartsResponse : SdkResponse + { + + /// + /// 模板列表 + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public List Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotChartsResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotChartsResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotChartsResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + this.Body != null && + input.Body != null && + this.Body.SequenceEqual(input.Body) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksRequest.cs b/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksRequest.cs new file mode 100644 index 000000000..33e15acd3 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotClusterMasterSnapshotTasksRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClusterMasterSnapshotTasksRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClusterMasterSnapshotTasksRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClusterMasterSnapshotTasksRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksResponse.cs b/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksResponse.cs new file mode 100644 index 000000000..1ea653d97 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterMasterSnapshotTasksResponse.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotClusterMasterSnapshotTasksResponse : SdkResponse + { + + /// + /// api版本,默认为v3.1 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 任务类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public SnapshotTaskMetadata Metadata { get; set; } + + /// + /// 备份任务列表 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public SnapshotTaskStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClusterMasterSnapshotTasksResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClusterMasterSnapshotTasksResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClusterMasterSnapshotTasksResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesRequest.cs b/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesRequest.cs new file mode 100644 index 000000000..269782e87 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotClusterUpgradeFeatureGatesRequest + { + + + + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesResponse.cs b/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesResponse.cs new file mode 100644 index 000000000..71187c409 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterUpgradeFeatureGatesResponse.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotClusterUpgradeFeatureGatesResponse : SdkResponse + { + + /// + /// API版本 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// 特性开关信息,格式为key/value键值对。 - Key: 目前有下列值:DisplayPreCheckDetail(展示所有集群升级前检查项详情),EvsSnapshot(使用EVS快照备份集群), LabelForSkippedNode(支持为集群升级过程中跳过的节点打标签), UpgradeStrategy(集群升级策略) - Value: Support 支持,Disable 关闭,Default 使用CCE服务默认规则判断 + /// + [JsonProperty("upgradeFeatureGates", NullValueHandling = NullValueHandling.Ignore)] + public Dictionary UpgradeFeatureGates { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClusterUpgradeFeatureGatesResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" upgradeFeatureGates: ").Append(UpgradeFeatureGates).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClusterUpgradeFeatureGatesResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClusterUpgradeFeatureGatesResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.UpgradeFeatureGates == input.UpgradeFeatureGates || + this.UpgradeFeatureGates != null && + input.UpgradeFeatureGates != null && + this.UpgradeFeatureGates.SequenceEqual(input.UpgradeFeatureGates) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.UpgradeFeatureGates != null) + hashCode = hashCode * 59 + this.UpgradeFeatureGates.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsRequest.cs b/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsRequest.cs new file mode 100644 index 000000000..9764ae850 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotClusterUpgradePathsRequest + { + + + + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsResponse.cs b/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsResponse.cs new file mode 100644 index 000000000..52342e515 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClusterUpgradePathsResponse.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotClusterUpgradePathsResponse : SdkResponse + { + + /// + /// API版本 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// 升级路径集合 + /// + [JsonProperty("upgradePaths", NullValueHandling = NullValueHandling.Ignore)] + public List UpgradePaths { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClusterUpgradePathsResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" upgradePaths: ").Append(UpgradePaths).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClusterUpgradePathsResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClusterUpgradePathsResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.UpgradePaths == input.UpgradePaths || + this.UpgradePaths != null && + input.UpgradePaths != null && + this.UpgradePaths.SequenceEqual(input.UpgradePaths) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.UpgradePaths != null) + hashCode = hashCode * 59 + this.UpgradePaths.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClustersRequest.cs b/Services/Cce/V3/Model/ListAutopilotClustersRequest.cs new file mode 100644 index 000000000..b33df7484 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClustersRequest.cs @@ -0,0 +1,381 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotClustersRequest + { + /// + /// 集群状态,取值如下 - Available:可用,表示集群处于正常状态。 - Unavailable:不可用,表示集群异常,需手动删除。 - Creating:创建中,表示集群正处于创建过程中。 - Deleting:删除中,表示集群正处于删除过程中。 - Upgrading:升级中,表示集群正处于升级过程中。 - RollingBack:回滚中,表示集群正处于回滚过程中。 - RollbackFailed:回滚异常,表示集群回滚异常。 - Error:错误,表示集群资源异常,可尝试手动删除。 + /// + /// 集群状态,取值如下 - Available:可用,表示集群处于正常状态。 - Unavailable:不可用,表示集群异常,需手动删除。 - Creating:创建中,表示集群正处于创建过程中。 - Deleting:删除中,表示集群正处于删除过程中。 - Upgrading:升级中,表示集群正处于升级过程中。 - RollingBack:回滚中,表示集群正处于回滚过程中。 - RollbackFailed:回滚异常,表示集群回滚异常。 - Error:错误,表示集群资源异常,可尝试手动删除。 + [JsonConverter(typeof(EnumClassConverter))] + public class StatusEnum + { + /// + /// Enum AVAILABLE for value: Available + /// + public static readonly StatusEnum AVAILABLE = new StatusEnum("Available"); + + /// + /// Enum UNAVAILABLE for value: Unavailable + /// + public static readonly StatusEnum UNAVAILABLE = new StatusEnum("Unavailable"); + + /// + /// Enum CREATING for value: Creating + /// + public static readonly StatusEnum CREATING = new StatusEnum("Creating"); + + /// + /// Enum DELETING for value: Deleting + /// + public static readonly StatusEnum DELETING = new StatusEnum("Deleting"); + + /// + /// Enum UPGRADING for value: Upgrading + /// + public static readonly StatusEnum UPGRADING = new StatusEnum("Upgrading"); + + /// + /// Enum ROLLINGBACK for value: RollingBack + /// + public static readonly StatusEnum ROLLINGBACK = new StatusEnum("RollingBack"); + + /// + /// Enum ROLLBACKFAILED for value: RollbackFailed + /// + public static readonly StatusEnum ROLLBACKFAILED = new StatusEnum("RollbackFailed"); + + /// + /// Enum ERROR for value: Error + /// + public static readonly StatusEnum ERROR = new StatusEnum("Error"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "Available", AVAILABLE }, + { "Unavailable", UNAVAILABLE }, + { "Creating", CREATING }, + { "Deleting", DELETING }, + { "Upgrading", UPGRADING }, + { "RollingBack", ROLLINGBACK }, + { "RollbackFailed", ROLLBACKFAILED }, + { "Error", ERROR }, + }; + + private string _value; + + public StatusEnum() + { + + } + + public StatusEnum(string value) + { + _value = value; + } + + public static StatusEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as StatusEnum)) + { + return true; + } + + return false; + } + + public bool Equals(StatusEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(StatusEnum a, StatusEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(StatusEnum a, StatusEnum b) + { + return !(a == b); + } + } + + /// + /// 集群类型: - VirtualMachine:CCE集群 + /// + /// 集群类型: - VirtualMachine:CCE集群 + [JsonConverter(typeof(EnumClassConverter))] + public class TypeEnum + { + /// + /// Enum VIRTUALMACHINE for value: VirtualMachine + /// + public static readonly TypeEnum VIRTUALMACHINE = new TypeEnum("VirtualMachine"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "VirtualMachine", VIRTUALMACHINE }, + }; + + private string _value; + + public TypeEnum() + { + + } + + public TypeEnum(string value) + { + _value = value; + } + + public static TypeEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as TypeEnum)) + { + return true; + } + + return false; + } + + public bool Equals(TypeEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(TypeEnum a, TypeEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(TypeEnum a, TypeEnum b) + { + return !(a == b); + } + } + + + /// + /// 查询集群详细信息。 若设置为true,获取集群下节点总数(totalNodesNumber)、正常节点数(activeNodesNumber)、CPU总量(totalNodesCPU)、内存总量(totalNodesMemory)、已安装插件列表(installedAddonInstances),已安装插件列表中包含名称(addonTemplateName)、版本号(version)、插件的状态信息(status),放入到annotation中。 + /// + [SDKProperty("detail", IsQuery = true)] + [JsonProperty("detail", NullValueHandling = NullValueHandling.Ignore)] + public string Detail { get; set; } + + /// + /// 集群状态,取值如下 - Available:可用,表示集群处于正常状态。 - Unavailable:不可用,表示集群异常,需手动删除。 - Creating:创建中,表示集群正处于创建过程中。 - Deleting:删除中,表示集群正处于删除过程中。 - Upgrading:升级中,表示集群正处于升级过程中。 - RollingBack:回滚中,表示集群正处于回滚过程中。 - RollbackFailed:回滚异常,表示集群回滚异常。 - Error:错误,表示集群资源异常,可尝试手动删除。 + /// + [SDKProperty("status", IsQuery = true)] + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public StatusEnum Status { get; set; } + /// + /// 集群类型: - VirtualMachine:CCE集群 + /// + [SDKProperty("type", IsQuery = true)] + [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] + public TypeEnum Type { get; set; } + /// + /// 集群版本过滤 + /// + [SDKProperty("version", IsQuery = true)] + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClustersRequest {\n"); + sb.Append(" detail: ").Append(Detail).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" type: ").Append(Type).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClustersRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClustersRequest input) + { + if (input == null) + return false; + + return + ( + this.Detail == input.Detail || + (this.Detail != null && + this.Detail.Equals(input.Detail)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Detail != null) + hashCode = hashCode * 59 + this.Detail.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.Type != null) + hashCode = hashCode * 59 + this.Type.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotClustersResponse.cs b/Services/Cce/V3/Model/ListAutopilotClustersResponse.cs new file mode 100644 index 000000000..6eb8edaea --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotClustersResponse.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotClustersResponse : SdkResponse + { + + /// + /// Api type + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API version + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 集群对象列表,包含了当前项目下所有集群的详细信息。您可通过items.metadata.name下的值来找到对应的集群。 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotClustersResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotClustersResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotClustersResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotPreCheckTasksRequest.cs b/Services/Cce/V3/Model/ListAutopilotPreCheckTasksRequest.cs new file mode 100644 index 000000000..1006f065e --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotPreCheckTasksRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotPreCheckTasksRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotPreCheckTasksRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotPreCheckTasksRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotPreCheckTasksRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotPreCheckTasksResponse.cs b/Services/Cce/V3/Model/ListAutopilotPreCheckTasksResponse.cs new file mode 100644 index 000000000..ba0a0bda0 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotPreCheckTasksResponse.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotPreCheckTasksResponse : SdkResponse + { + + /// + /// api版本,默认为v3 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// 集群检查任务列表 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotPreCheckTasksResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotPreCheckTasksResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotPreCheckTasksResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotReleasesRequest.cs b/Services/Cce/V3/Model/ListAutopilotReleasesRequest.cs new file mode 100644 index 000000000..f47045a03 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotReleasesRequest.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotReleasesRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 模板ID + /// + [SDKProperty("chart_id", IsQuery = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + /// + /// 模板对应的命名空间 + /// + [SDKProperty("namespace", IsQuery = true)] + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotReleasesRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotReleasesRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotReleasesRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotReleasesResponse.cs b/Services/Cce/V3/Model/ListAutopilotReleasesResponse.cs new file mode 100644 index 000000000..e227c6017 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotReleasesResponse.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotReleasesResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public List Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotReleasesResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotReleasesResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotReleasesResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + this.Body != null && + input.Body != null && + this.Body.SequenceEqual(input.Body) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksRequest.cs b/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksRequest.cs new file mode 100644 index 000000000..6ed9e7619 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotUpgradeClusterTasksRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotUpgradeClusterTasksRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotUpgradeClusterTasksRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotUpgradeClusterTasksRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksResponse.cs b/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksResponse.cs new file mode 100644 index 000000000..df046e855 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotUpgradeClusterTasksResponse.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotUpgradeClusterTasksResponse : SdkResponse + { + + /// + /// api版本,默认为v3 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeTaskMetadata Metadata { get; set; } + + /// + /// 集群升级任务列表 + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public List Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotUpgradeClusterTasksResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotUpgradeClusterTasksResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotUpgradeClusterTasksResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Items == input.Items || + this.Items != null && + input.Items != null && + this.Items.SequenceEqual(input.Items) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsRequest.cs b/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsRequest.cs new file mode 100644 index 000000000..d114dfe00 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ListAutopilotUpgradeWorkFlowsRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotUpgradeWorkFlowsRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotUpgradeWorkFlowsRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotUpgradeWorkFlowsRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsResponse.cs b/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsResponse.cs new file mode 100644 index 000000000..d7b2be571 --- /dev/null +++ b/Services/Cce/V3/Model/ListAutopilotUpgradeWorkFlowsResponse.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ListAutopilotUpgradeWorkFlowsResponse : SdkResponse + { + + /// + /// API类型,固定值“List”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("items", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeWorkFlow Items { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListAutopilotUpgradeWorkFlowsResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" items: ").Append(Items).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListAutopilotUpgradeWorkFlowsResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListAutopilotUpgradeWorkFlowsResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Items == input.Items || + (this.Items != null && + this.Items.Equals(input.Items)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Items != null) + hashCode = hashCode * 59 + this.Items.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskRequest.cs b/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskRequest.cs new file mode 100644 index 000000000..875e9353a --- /dev/null +++ b/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class RetryAutopilotUpgradeClusterTaskRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RetryAutopilotUpgradeClusterTaskRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RetryAutopilotUpgradeClusterTaskRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RetryAutopilotUpgradeClusterTaskRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskResponse.cs b/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskResponse.cs new file mode 100644 index 000000000..696c15fad --- /dev/null +++ b/Services/Cce/V3/Model/RetryAutopilotUpgradeClusterTaskResponse.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class RetryAutopilotUpgradeClusterTaskResponse : SdkResponse + { + + + + } +} diff --git a/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceRequest.cs b/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceRequest.cs new file mode 100644 index 000000000..cb42de9b2 --- /dev/null +++ b/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class RollbackAutopilotAddonInstanceRequest + { + + /// + /// 插件实例ID + /// + [SDKProperty("id", IsPath = true)] + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public AddonInstanceRollbackRequest Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RollbackAutopilotAddonInstanceRequest {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RollbackAutopilotAddonInstanceRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RollbackAutopilotAddonInstanceRequest input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceResponse.cs b/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceResponse.cs new file mode 100644 index 000000000..08b01d243 --- /dev/null +++ b/Services/Cce/V3/Model/RollbackAutopilotAddonInstanceResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class RollbackAutopilotAddonInstanceResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AddonMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public InstanceSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AddonInstanceStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RollbackAutopilotAddonInstanceResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RollbackAutopilotAddonInstanceResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RollbackAutopilotAddonInstanceResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotAddonInstanceRequest.cs b/Services/Cce/V3/Model/ShowAutopilotAddonInstanceRequest.cs new file mode 100644 index 000000000..fd3298bba --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotAddonInstanceRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotAddonInstanceRequest + { + + /// + /// 插件实例id + /// + [SDKProperty("id", IsPath = true)] + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 集群 ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml) + /// + [SDKProperty("cluster_id", IsQuery = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotAddonInstanceRequest {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotAddonInstanceRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotAddonInstanceRequest input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotAddonInstanceResponse.cs b/Services/Cce/V3/Model/ShowAutopilotAddonInstanceResponse.cs new file mode 100644 index 000000000..a9c35272e --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotAddonInstanceResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotAddonInstanceResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AddonMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public InstanceSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AddonInstanceStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotAddonInstanceResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotAddonInstanceResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotAddonInstanceResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotChartRequest.cs b/Services/Cce/V3/Model/ShowAutopilotChartRequest.cs new file mode 100644 index 000000000..3ba5c0ba7 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotChartRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotChartRequest + { + + /// + /// 模板的ID + /// + [SDKProperty("chart_id", IsPath = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotChartRequest {\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotChartRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotChartRequest input) + { + if (input == null) + return false; + + return + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotChartResponse.cs b/Services/Cce/V3/Model/ShowAutopilotChartResponse.cs new file mode 100644 index 000000000..017ce6ae4 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotChartResponse.cs @@ -0,0 +1,245 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotChartResponse : SdkResponse + { + + /// + /// 模板ID + /// + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 模板名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板翻译资源 + /// + [JsonProperty("translate", NullValueHandling = NullValueHandling.Ignore)] + public string Translate { get; set; } + + /// + /// 模板介绍 + /// + [JsonProperty("instruction", NullValueHandling = NullValueHandling.Ignore)] + public string Instruction { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + /// + /// 模板描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板的来源 + /// + [JsonProperty("source", NullValueHandling = NullValueHandling.Ignore)] + public string Source { get; set; } + + /// + /// 模板的图标链接 + /// + [JsonProperty("icon_url", NullValueHandling = NullValueHandling.Ignore)] + public string IconUrl { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("public", NullValueHandling = NullValueHandling.Ignore)] + public bool? Public { get; set; } + + /// + /// 模板的链接 + /// + [JsonProperty("chart_url", NullValueHandling = NullValueHandling.Ignore)] + public string ChartUrl { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotChartResponse {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" translate: ").Append(Translate).Append("\n"); + sb.Append(" instruction: ").Append(Instruction).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" source: ").Append(Source).Append("\n"); + sb.Append(" iconUrl: ").Append(IconUrl).Append("\n"); + sb.Append(" Public: ").Append(Public).Append("\n"); + sb.Append(" chartUrl: ").Append(ChartUrl).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotChartResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotChartResponse input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Translate == input.Translate || + (this.Translate != null && + this.Translate.Equals(input.Translate)) + ) && + ( + this.Instruction == input.Instruction || + (this.Instruction != null && + this.Instruction.Equals(input.Instruction)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Source == input.Source || + (this.Source != null && + this.Source.Equals(input.Source)) + ) && + ( + this.IconUrl == input.IconUrl || + (this.IconUrl != null && + this.IconUrl.Equals(input.IconUrl)) + ) && + ( + this.Public == input.Public || + (this.Public != null && + this.Public.Equals(input.Public)) + ) && + ( + this.ChartUrl == input.ChartUrl || + (this.ChartUrl != null && + this.ChartUrl.Equals(input.ChartUrl)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Translate != null) + hashCode = hashCode * 59 + this.Translate.GetHashCode(); + if (this.Instruction != null) + hashCode = hashCode * 59 + this.Instruction.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Source != null) + hashCode = hashCode * 59 + this.Source.GetHashCode(); + if (this.IconUrl != null) + hashCode = hashCode * 59 + this.IconUrl.GetHashCode(); + if (this.Public != null) + hashCode = hashCode * 59 + this.Public.GetHashCode(); + if (this.ChartUrl != null) + hashCode = hashCode * 59 + this.ChartUrl.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotChartValuesRequest.cs b/Services/Cce/V3/Model/ShowAutopilotChartValuesRequest.cs new file mode 100644 index 000000000..841121349 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotChartValuesRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotChartValuesRequest + { + + /// + /// 模板的ID + /// + [SDKProperty("chart_id", IsPath = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotChartValuesRequest {\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotChartValuesRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotChartValuesRequest input) + { + if (input == null) + return false; + + return + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotChartValuesResponse.cs b/Services/Cce/V3/Model/ShowAutopilotChartValuesResponse.cs new file mode 100644 index 000000000..a82245c1e --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotChartValuesResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotChartValuesResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public ChartValueValues Values { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotChartValuesResponse {\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotChartValuesResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotChartValuesResponse input) + { + if (input == null) + return false; + + return + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsRequest.cs b/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsRequest.cs new file mode 100644 index 000000000..e39406ccc --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotClusterEndpointsRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterEndpointsRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterEndpointsRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterEndpointsRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsResponse.cs b/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsResponse.cs new file mode 100644 index 000000000..4f71f1c90 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterEndpointsResponse.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotClusterEndpointsResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public OpenAPISpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public MasterEIPResponseStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterEndpointsResponse {\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterEndpointsResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterEndpointsResponse input) + { + if (input == null) + return false; + + return + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterRequest.cs b/Services/Cce/V3/Model/ShowAutopilotClusterRequest.cs new file mode 100644 index 000000000..89c02f03c --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotClusterRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 查询集群详细信息。 若设置为true,获取集群下节点总数(totalNodesNumber)、正常节点数(activeNodesNumber)、CPU总量(totalNodesCPU)、内存总量(totalNodesMemory)和已安装插件列表(installedAddonInstances),已安装插件列表中包含名称(addonTemplateName)、版本号(version)、插件的状态信息(status),放入到annotation中。 + /// + [SDKProperty("detail", IsQuery = true)] + [JsonProperty("detail", NullValueHandling = NullValueHandling.Ignore)] + public string Detail { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" detail: ").Append(Detail).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Detail == input.Detail || + (this.Detail != null && + this.Detail.Equals(input.Detail)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Detail != null) + hashCode = hashCode * 59 + this.Detail.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterResponse.cs b/Services/Cce/V3/Model/ShowAutopilotClusterResponse.cs new file mode 100644 index 000000000..e3a784bdb --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotClusterResponse : SdkResponse + { + + /// + /// API类型,固定值“Cluster”或“cluster”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoRequest.cs b/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoRequest.cs new file mode 100644 index 000000000..f76a25cc4 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotClusterUpgradeInfoRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterUpgradeInfoRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterUpgradeInfoRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterUpgradeInfoRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoResponse.cs b/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoResponse.cs new file mode 100644 index 000000000..88046aca6 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotClusterUpgradeInfoResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotClusterUpgradeInfoResponse : SdkResponse + { + + /// + /// 类型 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeInfoSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeInfoStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotClusterUpgradeInfoResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotClusterUpgradeInfoResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotClusterUpgradeInfoResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotJobRequest.cs b/Services/Cce/V3/Model/ShowAutopilotJobRequest.cs new file mode 100644 index 000000000..b49876f9e --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotJobRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotJobRequest + { + + /// + /// 任务ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("job_id", IsPath = true)] + [JsonProperty("job_id", NullValueHandling = NullValueHandling.Ignore)] + public string JobId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotJobRequest {\n"); + sb.Append(" jobId: ").Append(JobId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotJobRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotJobRequest input) + { + if (input == null) + return false; + + return + ( + this.JobId == input.JobId || + (this.JobId != null && + this.JobId.Equals(input.JobId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.JobId != null) + hashCode = hashCode * 59 + this.JobId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotJobResponse.cs b/Services/Cce/V3/Model/ShowAutopilotJobResponse.cs new file mode 100644 index 000000000..ae23e7c1f --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotJobResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotJobResponse : SdkResponse + { + + /// + /// API类型,固定值“Job”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public JobMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public JobSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public JobStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotJobResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotJobResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotJobResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotPreCheckRequest.cs b/Services/Cce/V3/Model/ShowAutopilotPreCheckRequest.cs new file mode 100644 index 000000000..d5f84db92 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotPreCheckRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotPreCheckRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 升级任务ID,调用集群升级API后从响应体中uid字段获取。 + /// + [SDKProperty("task_id", IsPath = true)] + [JsonProperty("task_id", NullValueHandling = NullValueHandling.Ignore)] + public string TaskId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotPreCheckRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" taskId: ").Append(TaskId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotPreCheckRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotPreCheckRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.TaskId == input.TaskId || + (this.TaskId != null && + this.TaskId.Equals(input.TaskId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.TaskId != null) + hashCode = hashCode * 59 + this.TaskId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotPreCheckResponse.cs b/Services/Cce/V3/Model/ShowAutopilotPreCheckResponse.cs new file mode 100644 index 000000000..b840f2294 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotPreCheckResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotPreCheckResponse : SdkResponse + { + + /// + /// api版本,默认为v3 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型,默认为PreCheckTask + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckTaskMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public PrecheckStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotPreCheckResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotPreCheckResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotPreCheckResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotQuotasRequest.cs b/Services/Cce/V3/Model/ShowAutopilotQuotasRequest.cs new file mode 100644 index 000000000..8e83b5db6 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotQuotasRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotQuotasRequest + { + + + + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotQuotasResponse.cs b/Services/Cce/V3/Model/ShowAutopilotQuotasResponse.cs new file mode 100644 index 000000000..80a873f74 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotQuotasResponse.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotQuotasResponse : SdkResponse + { + + /// + /// 资源 + /// + [JsonProperty("quotas", NullValueHandling = NullValueHandling.Ignore)] + public List Quotas { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotQuotasResponse {\n"); + sb.Append(" quotas: ").Append(Quotas).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotQuotasResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotQuotasResponse input) + { + if (input == null) + return false; + + return + ( + this.Quotas == input.Quotas || + this.Quotas != null && + input.Quotas != null && + this.Quotas.SequenceEqual(input.Quotas) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Quotas != null) + hashCode = hashCode * 59 + this.Quotas.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryRequest.cs b/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryRequest.cs new file mode 100644 index 000000000..bc8cac6c4 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryRequest.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotReleaseHistoryRequest + { + + /// + /// 模板实例名称 + /// + [SDKProperty("name", IsPath = true)] + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [SDKProperty("namespace", IsPath = true)] + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotReleaseHistoryRequest {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotReleaseHistoryRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotReleaseHistoryRequest input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryResponse.cs b/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryResponse.cs new file mode 100644 index 000000000..12cfd2a1e --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotReleaseHistoryResponse.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotReleaseHistoryResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public List Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotReleaseHistoryResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotReleaseHistoryResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotReleaseHistoryResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + this.Body != null && + input.Body != null && + this.Body.SequenceEqual(input.Body) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotReleaseRequest.cs b/Services/Cce/V3/Model/ShowAutopilotReleaseRequest.cs new file mode 100644 index 000000000..9c963b4e5 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotReleaseRequest.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotReleaseRequest + { + + /// + /// 模板实例名称 + /// + [SDKProperty("name", IsPath = true)] + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [SDKProperty("namespace", IsPath = true)] + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotReleaseRequest {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotReleaseRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotReleaseRequest input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotReleaseResponse.cs b/Services/Cce/V3/Model/ShowAutopilotReleaseResponse.cs new file mode 100644 index 000000000..37bd5d257 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotReleaseResponse.cs @@ -0,0 +1,287 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotReleaseResponse : SdkResponse + { + + /// + /// 模板名称 + /// + [JsonProperty("chart_name", NullValueHandling = NullValueHandling.Ignore)] + public string ChartName { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("chart_public", NullValueHandling = NullValueHandling.Ignore)] + public bool? ChartPublic { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("chart_version", NullValueHandling = NullValueHandling.Ignore)] + public string ChartVersion { get; set; } + + /// + /// 集群ID + /// + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 集群名称 + /// + [JsonProperty("cluster_name", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterName { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 模板实例描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板实例名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 模板实例参数 + /// + [JsonProperty("parameters", NullValueHandling = NullValueHandling.Ignore)] + public string Parameters { get; set; } + + /// + /// 模板实例需要的资源 + /// + [JsonProperty("resources", NullValueHandling = NullValueHandling.Ignore)] + public string Resources { get; set; } + + /// + /// 模板实例状态 + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public string Status { get; set; } + + /// + /// 模板实例状态描述 + /// + [JsonProperty("status_description", NullValueHandling = NullValueHandling.Ignore)] + public string StatusDescription { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + /// + /// 模板实例的值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板实例版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public int? Version { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotReleaseResponse {\n"); + sb.Append(" chartName: ").Append(ChartName).Append("\n"); + sb.Append(" chartPublic: ").Append(ChartPublic).Append("\n"); + sb.Append(" chartVersion: ").Append(ChartVersion).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" clusterName: ").Append(ClusterName).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" parameters: ").Append(Parameters).Append("\n"); + sb.Append(" resources: ").Append(Resources).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" statusDescription: ").Append(StatusDescription).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotReleaseResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotReleaseResponse input) + { + if (input == null) + return false; + + return + ( + this.ChartName == input.ChartName || + (this.ChartName != null && + this.ChartName.Equals(input.ChartName)) + ) && + ( + this.ChartPublic == input.ChartPublic || + (this.ChartPublic != null && + this.ChartPublic.Equals(input.ChartPublic)) + ) && + ( + this.ChartVersion == input.ChartVersion || + (this.ChartVersion != null && + this.ChartVersion.Equals(input.ChartVersion)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.ClusterName == input.ClusterName || + (this.ClusterName != null && + this.ClusterName.Equals(input.ClusterName)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.Parameters == input.Parameters || + (this.Parameters != null && + this.Parameters.Equals(input.Parameters)) + ) && + ( + this.Resources == input.Resources || + (this.Resources != null && + this.Resources.Equals(input.Resources)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.StatusDescription == input.StatusDescription || + (this.StatusDescription != null && + this.StatusDescription.Equals(input.StatusDescription)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartName != null) + hashCode = hashCode * 59 + this.ChartName.GetHashCode(); + if (this.ChartPublic != null) + hashCode = hashCode * 59 + this.ChartPublic.GetHashCode(); + if (this.ChartVersion != null) + hashCode = hashCode * 59 + this.ChartVersion.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.ClusterName != null) + hashCode = hashCode * 59 + this.ClusterName.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.Parameters != null) + hashCode = hashCode * 59 + this.Parameters.GetHashCode(); + if (this.Resources != null) + hashCode = hashCode * 59 + this.Resources.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.StatusDescription != null) + hashCode = hashCode * 59 + this.StatusDescription.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskRequest.cs b/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskRequest.cs new file mode 100644 index 000000000..f171de24c --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotUpgradeClusterTaskRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 升级任务ID,调用集群升级API后从响应体中uid字段获取。 + /// + [SDKProperty("task_id", IsPath = true)] + [JsonProperty("task_id", NullValueHandling = NullValueHandling.Ignore)] + public string TaskId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotUpgradeClusterTaskRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" taskId: ").Append(TaskId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotUpgradeClusterTaskRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotUpgradeClusterTaskRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.TaskId == input.TaskId || + (this.TaskId != null && + this.TaskId.Equals(input.TaskId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.TaskId != null) + hashCode = hashCode * 59 + this.TaskId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskResponse.cs b/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskResponse.cs new file mode 100644 index 000000000..94b615067 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUpgradeClusterTaskResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotUpgradeClusterTaskResponse : SdkResponse + { + + /// + /// api版本,默认为v3 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// 资源类型,默认为UpgradeTask + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeTaskMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeTaskSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeTaskStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotUpgradeClusterTaskResponse {\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotUpgradeClusterTaskResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotUpgradeClusterTaskResponse input) + { + if (input == null) + return false; + + return + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowRequest.cs b/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowRequest.cs new file mode 100644 index 000000000..5f72264f4 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotUpgradeWorkFlowRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 集群升级任务引导流程ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("upgrade_workflow_id", IsPath = true)] + [JsonProperty("upgrade_workflow_id", NullValueHandling = NullValueHandling.Ignore)] + public string UpgradeWorkflowId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotUpgradeWorkFlowRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" upgradeWorkflowId: ").Append(UpgradeWorkflowId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotUpgradeWorkFlowRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotUpgradeWorkFlowRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.UpgradeWorkflowId == input.UpgradeWorkflowId || + (this.UpgradeWorkflowId != null && + this.UpgradeWorkflowId.Equals(input.UpgradeWorkflowId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.UpgradeWorkflowId != null) + hashCode = hashCode * 59 + this.UpgradeWorkflowId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowResponse.cs b/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowResponse.cs new file mode 100644 index 000000000..40db4141f --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUpgradeWorkFlowResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotUpgradeWorkFlowResponse : SdkResponse + { + + /// + /// API类型,固定值“WorkFlowTask”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotUpgradeWorkFlowResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotUpgradeWorkFlowResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotUpgradeWorkFlowResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasRequest.cs b/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasRequest.cs new file mode 100644 index 000000000..7143af13a --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class ShowAutopilotUserChartsQuotasRequest + { + + + + } +} diff --git a/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasResponse.cs b/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasResponse.cs new file mode 100644 index 000000000..1ae5ff936 --- /dev/null +++ b/Services/Cce/V3/Model/ShowAutopilotUserChartsQuotasResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class ShowAutopilotUserChartsQuotasResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("quotas", NullValueHandling = NullValueHandling.Ignore)] + public QuotaRespQuotas Quotas { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowAutopilotUserChartsQuotasResponse {\n"); + sb.Append(" quotas: ").Append(Quotas).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowAutopilotUserChartsQuotasResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowAutopilotUserChartsQuotasResponse input) + { + if (input == null) + return false; + + return + ( + this.Quotas == input.Quotas || + (this.Quotas != null && + this.Quotas.Equals(input.Quotas)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Quotas != null) + hashCode = hashCode * 59 + this.Quotas.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceRequest.cs b/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceRequest.cs new file mode 100644 index 000000000..38525d8f8 --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpdateAutopilotAddonInstanceRequest + { + + /// + /// 插件实例id + /// + [SDKProperty("id", IsPath = true)] + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public InstanceRequest Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotAddonInstanceRequest {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotAddonInstanceRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotAddonInstanceRequest input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceResponse.cs b/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceResponse.cs new file mode 100644 index 000000000..a51514c1a --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotAddonInstanceResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpdateAutopilotAddonInstanceResponse : SdkResponse + { + + /// + /// API类型,固定值“Addon”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AddonMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public InstanceSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AddonInstanceStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotAddonInstanceResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotAddonInstanceResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotAddonInstanceResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotChartRequest.cs b/Services/Cce/V3/Model/UpdateAutopilotChartRequest.cs new file mode 100644 index 000000000..e2b204a2d --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotChartRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpdateAutopilotChartRequest + { + + /// + /// 模板的ID + /// + [SDKProperty("chart_id", IsPath = true)] + [JsonProperty("chart_id", NullValueHandling = NullValueHandling.Ignore)] + public string ChartId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UpdateAutopilotChartRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotChartRequest {\n"); + sb.Append(" chartId: ").Append(ChartId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotChartRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotChartRequest input) + { + if (input == null) + return false; + + return + ( + this.ChartId == input.ChartId || + (this.ChartId != null && + this.ChartId.Equals(input.ChartId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartId != null) + hashCode = hashCode * 59 + this.ChartId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotChartRequestBody.cs b/Services/Cce/V3/Model/UpdateAutopilotChartRequestBody.cs new file mode 100644 index 000000000..67af776d9 --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotChartRequestBody.cs @@ -0,0 +1,117 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class UpdateAutopilotChartRequestBody : IFormDataBody + { + + /// + /// 上传模板的配置参数,示例如下:\"{\\\"override\\\":true,\\\"skip_lint\\\":true,\\\"source\\\":\\\"package\\\"}\" - skip_lint: whether lint uploaded chart - override: whether override existed chart - visible: update chart visible + /// + [JsonProperty("parameters", NullValueHandling = NullValueHandling.Ignore)] + public string Parameters { get; set; } + + /// + /// 模板包文件 + /// + [JsonProperty("content", NullValueHandling = NullValueHandling.Ignore)] + public FormDataFilePart Content { get; set; } + + + + public UpdateAutopilotChartRequestBody WithContent(Stream stream, string filename) + { + this.Content = new FormDataFilePart(stream, filename); + return this; + } + + public UpdateAutopilotChartRequestBody WithContent(Stream stream, string filename, string contentType) + { + this.Content = new FormDataFilePart(stream, filename).WithContentType(contentType); + return this; + } + + + public Dictionary BuildFormData() + { + var formData = new Dictionary(); + + if (Parameters != null) { + formData.Add("parameters", new FormDataPart(Parameters)); + } + formData.Add("content", Content); + + return formData; + } + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotChartRequestBody {\n"); + sb.Append(" parameters: ").Append(Parameters).Append("\n"); + sb.Append(" content: ").Append(Content).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotChartRequestBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotChartRequestBody input) + { + if (input == null) + return false; + + return + ( + this.Parameters == input.Parameters || + (this.Parameters != null && + this.Parameters.Equals(input.Parameters)) + ) && + ( + this.Content == input.Content || + (this.Content != null && + this.Content.Equals(input.Content)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Parameters != null) + hashCode = hashCode * 59 + this.Parameters.GetHashCode(); + if (this.Content != null) + hashCode = hashCode * 59 + this.Content.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotChartResponse.cs b/Services/Cce/V3/Model/UpdateAutopilotChartResponse.cs new file mode 100644 index 000000000..7d248fa8e --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotChartResponse.cs @@ -0,0 +1,245 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpdateAutopilotChartResponse : SdkResponse + { + + /// + /// 模板ID + /// + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 模板名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板翻译资源 + /// + [JsonProperty("translate", NullValueHandling = NullValueHandling.Ignore)] + public string Translate { get; set; } + + /// + /// 模板介绍 + /// + [JsonProperty("instruction", NullValueHandling = NullValueHandling.Ignore)] + public string Instruction { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + /// + /// 模板描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板的来源 + /// + [JsonProperty("source", NullValueHandling = NullValueHandling.Ignore)] + public string Source { get; set; } + + /// + /// 模板的图标链接 + /// + [JsonProperty("icon_url", NullValueHandling = NullValueHandling.Ignore)] + public string IconUrl { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("public", NullValueHandling = NullValueHandling.Ignore)] + public bool? Public { get; set; } + + /// + /// 模板的链接 + /// + [JsonProperty("chart_url", NullValueHandling = NullValueHandling.Ignore)] + public string ChartUrl { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotChartResponse {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" translate: ").Append(Translate).Append("\n"); + sb.Append(" instruction: ").Append(Instruction).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" source: ").Append(Source).Append("\n"); + sb.Append(" iconUrl: ").Append(IconUrl).Append("\n"); + sb.Append(" Public: ").Append(Public).Append("\n"); + sb.Append(" chartUrl: ").Append(ChartUrl).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotChartResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotChartResponse input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Translate == input.Translate || + (this.Translate != null && + this.Translate.Equals(input.Translate)) + ) && + ( + this.Instruction == input.Instruction || + (this.Instruction != null && + this.Instruction.Equals(input.Instruction)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Source == input.Source || + (this.Source != null && + this.Source.Equals(input.Source)) + ) && + ( + this.IconUrl == input.IconUrl || + (this.IconUrl != null && + this.IconUrl.Equals(input.IconUrl)) + ) && + ( + this.Public == input.Public || + (this.Public != null && + this.Public.Equals(input.Public)) + ) && + ( + this.ChartUrl == input.ChartUrl || + (this.ChartUrl != null && + this.ChartUrl.Equals(input.ChartUrl)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Translate != null) + hashCode = hashCode * 59 + this.Translate.GetHashCode(); + if (this.Instruction != null) + hashCode = hashCode * 59 + this.Instruction.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Source != null) + hashCode = hashCode * 59 + this.Source.GetHashCode(); + if (this.IconUrl != null) + hashCode = hashCode * 59 + this.IconUrl.GetHashCode(); + if (this.Public != null) + hashCode = hashCode * 59 + this.Public.GetHashCode(); + if (this.ChartUrl != null) + hashCode = hashCode * 59 + this.ChartUrl.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotClusterRequest.cs b/Services/Cce/V3/Model/UpdateAutopilotClusterRequest.cs new file mode 100644 index 000000000..feb7ff5bf --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotClusterRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpdateAutopilotClusterRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterInformation Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotClusterRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotClusterRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotClusterRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotClusterResponse.cs b/Services/Cce/V3/Model/UpdateAutopilotClusterResponse.cs new file mode 100644 index 000000000..3c170f242 --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotClusterResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpdateAutopilotClusterResponse : SdkResponse + { + + /// + /// API类型,固定值“Cluster”或“cluster”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public AutopilotClusterStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotClusterResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotClusterResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotClusterResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotReleaseRequest.cs b/Services/Cce/V3/Model/UpdateAutopilotReleaseRequest.cs new file mode 100644 index 000000000..15dc53050 --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotReleaseRequest.cs @@ -0,0 +1,123 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpdateAutopilotReleaseRequest + { + + /// + /// 模板实例名称 + /// + [SDKProperty("name", IsPath = true)] + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [SDKProperty("namespace", IsPath = true)] + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UpdateReleaseReqBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotReleaseRequest {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotReleaseRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotReleaseRequest input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpdateAutopilotReleaseResponse.cs b/Services/Cce/V3/Model/UpdateAutopilotReleaseResponse.cs new file mode 100644 index 000000000..b33e2a0db --- /dev/null +++ b/Services/Cce/V3/Model/UpdateAutopilotReleaseResponse.cs @@ -0,0 +1,287 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpdateAutopilotReleaseResponse : SdkResponse + { + + /// + /// 模板名称 + /// + [JsonProperty("chart_name", NullValueHandling = NullValueHandling.Ignore)] + public string ChartName { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("chart_public", NullValueHandling = NullValueHandling.Ignore)] + public bool? ChartPublic { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("chart_version", NullValueHandling = NullValueHandling.Ignore)] + public string ChartVersion { get; set; } + + /// + /// 集群ID + /// + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 集群名称 + /// + [JsonProperty("cluster_name", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterName { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 模板实例描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板实例名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板实例所在的命名空间 + /// + [JsonProperty("namespace", NullValueHandling = NullValueHandling.Ignore)] + public string Namespace { get; set; } + + /// + /// 模板实例参数 + /// + [JsonProperty("parameters", NullValueHandling = NullValueHandling.Ignore)] + public string Parameters { get; set; } + + /// + /// 模板实例需要的资源 + /// + [JsonProperty("resources", NullValueHandling = NullValueHandling.Ignore)] + public string Resources { get; set; } + + /// + /// 模板实例状态 + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public string Status { get; set; } + + /// + /// 模板实例状态描述 + /// + [JsonProperty("status_description", NullValueHandling = NullValueHandling.Ignore)] + public string StatusDescription { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + /// + /// 模板实例的值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板实例版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public int? Version { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateAutopilotReleaseResponse {\n"); + sb.Append(" chartName: ").Append(ChartName).Append("\n"); + sb.Append(" chartPublic: ").Append(ChartPublic).Append("\n"); + sb.Append(" chartVersion: ").Append(ChartVersion).Append("\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" clusterName: ").Append(ClusterName).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" Namespace: ").Append(Namespace).Append("\n"); + sb.Append(" parameters: ").Append(Parameters).Append("\n"); + sb.Append(" resources: ").Append(Resources).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" statusDescription: ").Append(StatusDescription).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateAutopilotReleaseResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateAutopilotReleaseResponse input) + { + if (input == null) + return false; + + return + ( + this.ChartName == input.ChartName || + (this.ChartName != null && + this.ChartName.Equals(input.ChartName)) + ) && + ( + this.ChartPublic == input.ChartPublic || + (this.ChartPublic != null && + this.ChartPublic.Equals(input.ChartPublic)) + ) && + ( + this.ChartVersion == input.ChartVersion || + (this.ChartVersion != null && + this.ChartVersion.Equals(input.ChartVersion)) + ) && + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.ClusterName == input.ClusterName || + (this.ClusterName != null && + this.ClusterName.Equals(input.ClusterName)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Namespace == input.Namespace || + (this.Namespace != null && + this.Namespace.Equals(input.Namespace)) + ) && + ( + this.Parameters == input.Parameters || + (this.Parameters != null && + this.Parameters.Equals(input.Parameters)) + ) && + ( + this.Resources == input.Resources || + (this.Resources != null && + this.Resources.Equals(input.Resources)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.StatusDescription == input.StatusDescription || + (this.StatusDescription != null && + this.StatusDescription.Equals(input.StatusDescription)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChartName != null) + hashCode = hashCode * 59 + this.ChartName.GetHashCode(); + if (this.ChartPublic != null) + hashCode = hashCode * 59 + this.ChartPublic.GetHashCode(); + if (this.ChartVersion != null) + hashCode = hashCode * 59 + this.ChartVersion.GetHashCode(); + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.ClusterName != null) + hashCode = hashCode * 59 + this.ClusterName.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Namespace != null) + hashCode = hashCode * 59 + this.Namespace.GetHashCode(); + if (this.Parameters != null) + hashCode = hashCode * 59 + this.Parameters.GetHashCode(); + if (this.Resources != null) + hashCode = hashCode * 59 + this.Resources.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.StatusDescription != null) + hashCode = hashCode * 59 + this.StatusDescription.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpgradeAutopilotClusterRequest.cs b/Services/Cce/V3/Model/UpgradeAutopilotClusterRequest.cs new file mode 100644 index 000000000..231604133 --- /dev/null +++ b/Services/Cce/V3/Model/UpgradeAutopilotClusterRequest.cs @@ -0,0 +1,93 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpgradeAutopilotClusterRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeClusterRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpgradeAutopilotClusterRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpgradeAutopilotClusterRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpgradeAutopilotClusterRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpgradeAutopilotClusterResponse.cs b/Services/Cce/V3/Model/UpgradeAutopilotClusterResponse.cs new file mode 100644 index 000000000..e7da87607 --- /dev/null +++ b/Services/Cce/V3/Model/UpgradeAutopilotClusterResponse.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpgradeAutopilotClusterResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeCluserResponseMetadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeResponseSpec Spec { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpgradeAutopilotClusterResponse {\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpgradeAutopilotClusterResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpgradeAutopilotClusterResponse input) + { + if (input == null) + return false; + + return + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateRequest.cs b/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateRequest.cs new file mode 100644 index 000000000..8d432e0b8 --- /dev/null +++ b/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateRequest.cs @@ -0,0 +1,108 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UpgradeAutopilotWorkFlowUpdateRequest + { + + /// + /// 集群ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("cluster_id", IsPath = true)] + [JsonProperty("cluster_id", NullValueHandling = NullValueHandling.Ignore)] + public string ClusterId { get; set; } + + /// + /// 集群升级任务引导流程ID,获取方式请参见[如何获取接口URI中参数](cce_02_0271.xml)。 + /// + [SDKProperty("upgrade_workflow_id", IsPath = true)] + [JsonProperty("upgrade_workflow_id", NullValueHandling = NullValueHandling.Ignore)] + public string UpgradeWorkflowId { get; set; } + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UpgradeWorkFlowUpdateRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpgradeAutopilotWorkFlowUpdateRequest {\n"); + sb.Append(" clusterId: ").Append(ClusterId).Append("\n"); + sb.Append(" upgradeWorkflowId: ").Append(UpgradeWorkflowId).Append("\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpgradeAutopilotWorkFlowUpdateRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpgradeAutopilotWorkFlowUpdateRequest input) + { + if (input == null) + return false; + + return + ( + this.ClusterId == input.ClusterId || + (this.ClusterId != null && + this.ClusterId.Equals(input.ClusterId)) + ) && + ( + this.UpgradeWorkflowId == input.UpgradeWorkflowId || + (this.UpgradeWorkflowId != null && + this.UpgradeWorkflowId.Equals(input.UpgradeWorkflowId)) + ) && + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ClusterId != null) + hashCode = hashCode * 59 + this.ClusterId.GetHashCode(); + if (this.UpgradeWorkflowId != null) + hashCode = hashCode * 59 + this.UpgradeWorkflowId.GetHashCode(); + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateResponse.cs b/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateResponse.cs new file mode 100644 index 000000000..bd9908add --- /dev/null +++ b/Services/Cce/V3/Model/UpgradeAutopilotWorkFlowUpdateResponse.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UpgradeAutopilotWorkFlowUpdateResponse : SdkResponse + { + + /// + /// API类型,固定值“WorkFlowTask”,该值不可修改。 + /// + [JsonProperty("kind", NullValueHandling = NullValueHandling.Ignore)] + public string Kind { get; set; } + + /// + /// API版本,固定值“v3”,该值不可修改。 + /// + [JsonProperty("apiVersion", NullValueHandling = NullValueHandling.Ignore)] + public string ApiVersion { get; set; } + + /// + /// + /// + [JsonProperty("metadata", NullValueHandling = NullValueHandling.Ignore)] + public Metadata Metadata { get; set; } + + /// + /// + /// + [JsonProperty("spec", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowSpec Spec { get; set; } + + /// + /// + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public WorkFlowStatus Status { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpgradeAutopilotWorkFlowUpdateResponse {\n"); + sb.Append(" kind: ").Append(Kind).Append("\n"); + sb.Append(" apiVersion: ").Append(ApiVersion).Append("\n"); + sb.Append(" metadata: ").Append(Metadata).Append("\n"); + sb.Append(" spec: ").Append(Spec).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpgradeAutopilotWorkFlowUpdateResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpgradeAutopilotWorkFlowUpdateResponse input) + { + if (input == null) + return false; + + return + ( + this.Kind == input.Kind || + (this.Kind != null && + this.Kind.Equals(input.Kind)) + ) && + ( + this.ApiVersion == input.ApiVersion || + (this.ApiVersion != null && + this.ApiVersion.Equals(input.ApiVersion)) + ) && + ( + this.Metadata == input.Metadata || + (this.Metadata != null && + this.Metadata.Equals(input.Metadata)) + ) && + ( + this.Spec == input.Spec || + (this.Spec != null && + this.Spec.Equals(input.Spec)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Kind != null) + hashCode = hashCode * 59 + this.Kind.GetHashCode(); + if (this.ApiVersion != null) + hashCode = hashCode * 59 + this.ApiVersion.GetHashCode(); + if (this.Metadata != null) + hashCode = hashCode * 59 + this.Metadata.GetHashCode(); + if (this.Spec != null) + hashCode = hashCode * 59 + this.Spec.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UploadAutopilotChartRequest.cs b/Services/Cce/V3/Model/UploadAutopilotChartRequest.cs new file mode 100644 index 000000000..2e383df7d --- /dev/null +++ b/Services/Cce/V3/Model/UploadAutopilotChartRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Request Object + /// + public class UploadAutopilotChartRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UploadAutopilotChartRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UploadAutopilotChartRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UploadAutopilotChartRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UploadAutopilotChartRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UploadAutopilotChartRequestBody.cs b/Services/Cce/V3/Model/UploadAutopilotChartRequestBody.cs new file mode 100644 index 000000000..d480bb9af --- /dev/null +++ b/Services/Cce/V3/Model/UploadAutopilotChartRequestBody.cs @@ -0,0 +1,117 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// + /// + public class UploadAutopilotChartRequestBody : IFormDataBody + { + + /// + /// 上传模板的配置参数,示例如下:\"{\\\"override\\\":true,\\\"skip_lint\\\":true,\\\"source\\\":\\\"package\\\"}\" - skip_lint: 是否验证上传的模板 - override: 是否覆盖已存在的模板 - visible: 模板是否可见 + /// + [JsonProperty("parameters", NullValueHandling = NullValueHandling.Ignore)] + public string Parameters { get; set; } + + /// + /// 模板包文件 + /// + [JsonProperty("content", NullValueHandling = NullValueHandling.Ignore)] + public FormDataFilePart Content { get; set; } + + + + public UploadAutopilotChartRequestBody WithContent(Stream stream, string filename) + { + this.Content = new FormDataFilePart(stream, filename); + return this; + } + + public UploadAutopilotChartRequestBody WithContent(Stream stream, string filename, string contentType) + { + this.Content = new FormDataFilePart(stream, filename).WithContentType(contentType); + return this; + } + + + public Dictionary BuildFormData() + { + var formData = new Dictionary(); + + if (Parameters != null) { + formData.Add("parameters", new FormDataPart(Parameters)); + } + formData.Add("content", Content); + + return formData; + } + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UploadAutopilotChartRequestBody {\n"); + sb.Append(" parameters: ").Append(Parameters).Append("\n"); + sb.Append(" content: ").Append(Content).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UploadAutopilotChartRequestBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UploadAutopilotChartRequestBody input) + { + if (input == null) + return false; + + return + ( + this.Parameters == input.Parameters || + (this.Parameters != null && + this.Parameters.Equals(input.Parameters)) + ) && + ( + this.Content == input.Content || + (this.Content != null && + this.Content.Equals(input.Content)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Parameters != null) + hashCode = hashCode * 59 + this.Parameters.GetHashCode(); + if (this.Content != null) + hashCode = hashCode * 59 + this.Content.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cce/V3/Model/UploadAutopilotChartResponse.cs b/Services/Cce/V3/Model/UploadAutopilotChartResponse.cs new file mode 100644 index 000000000..b74a05d4a --- /dev/null +++ b/Services/Cce/V3/Model/UploadAutopilotChartResponse.cs @@ -0,0 +1,245 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cce.V3.Model +{ + /// + /// Response Object + /// + public class UploadAutopilotChartResponse : SdkResponse + { + + /// + /// 模板ID + /// + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 模板名称 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 模板值 + /// + [JsonProperty("values", NullValueHandling = NullValueHandling.Ignore)] + public string Values { get; set; } + + /// + /// 模板翻译资源 + /// + [JsonProperty("translate", NullValueHandling = NullValueHandling.Ignore)] + public string Translate { get; set; } + + /// + /// 模板介绍 + /// + [JsonProperty("instruction", NullValueHandling = NullValueHandling.Ignore)] + public string Instruction { get; set; } + + /// + /// 模板版本 + /// + [JsonProperty("version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + /// + /// 模板描述 + /// + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } + + /// + /// 模板的来源 + /// + [JsonProperty("source", NullValueHandling = NullValueHandling.Ignore)] + public string Source { get; set; } + + /// + /// 模板的图标链接 + /// + [JsonProperty("icon_url", NullValueHandling = NullValueHandling.Ignore)] + public string IconUrl { get; set; } + + /// + /// 是否公开模板 + /// + [JsonProperty("public", NullValueHandling = NullValueHandling.Ignore)] + public bool? Public { get; set; } + + /// + /// 模板的链接 + /// + [JsonProperty("chart_url", NullValueHandling = NullValueHandling.Ignore)] + public string ChartUrl { get; set; } + + /// + /// 创建时间 + /// + [JsonProperty("create_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreateAt { get; set; } + + /// + /// 更新时间 + /// + [JsonProperty("update_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdateAt { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UploadAutopilotChartResponse {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" values: ").Append(Values).Append("\n"); + sb.Append(" translate: ").Append(Translate).Append("\n"); + sb.Append(" instruction: ").Append(Instruction).Append("\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); + sb.Append(" source: ").Append(Source).Append("\n"); + sb.Append(" iconUrl: ").Append(IconUrl).Append("\n"); + sb.Append(" Public: ").Append(Public).Append("\n"); + sb.Append(" chartUrl: ").Append(ChartUrl).Append("\n"); + sb.Append(" createAt: ").Append(CreateAt).Append("\n"); + sb.Append(" updateAt: ").Append(UpdateAt).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UploadAutopilotChartResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UploadAutopilotChartResponse input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Values == input.Values || + (this.Values != null && + this.Values.Equals(input.Values)) + ) && + ( + this.Translate == input.Translate || + (this.Translate != null && + this.Translate.Equals(input.Translate)) + ) && + ( + this.Instruction == input.Instruction || + (this.Instruction != null && + this.Instruction.Equals(input.Instruction)) + ) && + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ) && + ( + this.Description == input.Description || + (this.Description != null && + this.Description.Equals(input.Description)) + ) && + ( + this.Source == input.Source || + (this.Source != null && + this.Source.Equals(input.Source)) + ) && + ( + this.IconUrl == input.IconUrl || + (this.IconUrl != null && + this.IconUrl.Equals(input.IconUrl)) + ) && + ( + this.Public == input.Public || + (this.Public != null && + this.Public.Equals(input.Public)) + ) && + ( + this.ChartUrl == input.ChartUrl || + (this.ChartUrl != null && + this.ChartUrl.Equals(input.ChartUrl)) + ) && + ( + this.CreateAt == input.CreateAt || + (this.CreateAt != null && + this.CreateAt.Equals(input.CreateAt)) + ) && + ( + this.UpdateAt == input.UpdateAt || + (this.UpdateAt != null && + this.UpdateAt.Equals(input.UpdateAt)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Values != null) + hashCode = hashCode * 59 + this.Values.GetHashCode(); + if (this.Translate != null) + hashCode = hashCode * 59 + this.Translate.GetHashCode(); + if (this.Instruction != null) + hashCode = hashCode * 59 + this.Instruction.GetHashCode(); + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); + if (this.Source != null) + hashCode = hashCode * 59 + this.Source.GetHashCode(); + if (this.IconUrl != null) + hashCode = hashCode * 59 + this.IconUrl.GetHashCode(); + if (this.Public != null) + hashCode = hashCode * 59 + this.Public.GetHashCode(); + if (this.ChartUrl != null) + hashCode = hashCode * 59 + this.ChartUrl.GetHashCode(); + if (this.CreateAt != null) + hashCode = hashCode * 59 + this.CreateAt.GetHashCode(); + if (this.UpdateAt != null) + hashCode = hashCode * 59 + this.UpdateAt.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cdn/Cdn.csproj b/Services/Cdn/Cdn.csproj index cfdfc3d3d..3d8303a01 100644 --- a/Services/Cdn/Cdn.csproj +++ b/Services/Cdn/Cdn.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Cdn - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ces/Ces.csproj b/Services/Ces/Ces.csproj index 0fdecd31e..792e18550 100644 --- a/Services/Ces/Ces.csproj +++ b/Services/Ces/Ces.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ces - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Cfw/Cfw.csproj b/Services/Cfw/Cfw.csproj index 041e61a1b..8013d0715 100644 --- a/Services/Cfw/Cfw.csproj +++ b/Services/Cfw/Cfw.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Cfw - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Classroom/Classroom.csproj b/Services/Classroom/Classroom.csproj index a631d2e5c..321404a1e 100644 --- a/Services/Classroom/Classroom.csproj +++ b/Services/Classroom/Classroom.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Classroom - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/CloudRtc/CloudRtc.csproj b/Services/CloudRtc/CloudRtc.csproj index 2570b81bc..13bb8f914 100644 --- a/Services/CloudRtc/CloudRtc.csproj +++ b/Services/CloudRtc/CloudRtc.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.CloudRtc - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/CodeArtsBuild/CodeArtsBuild.csproj b/Services/CodeArtsBuild/CodeArtsBuild.csproj index 4187621b0..5b66cdb89 100644 --- a/Services/CodeArtsBuild/CodeArtsBuild.csproj +++ b/Services/CodeArtsBuild/CodeArtsBuild.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.CodeArtsBuild - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/CodeArtsDeploy/CodeArtsDeploy.csproj b/Services/CodeArtsDeploy/CodeArtsDeploy.csproj index 11d28200f..0de035b4a 100644 --- a/Services/CodeArtsDeploy/CodeArtsDeploy.csproj +++ b/Services/CodeArtsDeploy/CodeArtsDeploy.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.CodeArtsDeploy - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Csms/Csms.csproj b/Services/Csms/Csms.csproj index 7b5da56f2..d9499ef46 100644 --- a/Services/Csms/Csms.csproj +++ b/Services/Csms/Csms.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Csms - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Cts/Cts.csproj b/Services/Cts/Cts.csproj index d8d849f87..beed36fee 100644 --- a/Services/Cts/Cts.csproj +++ b/Services/Cts/Cts.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Cts - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Cts/V3/Model/Attributes.cs b/Services/Cts/V3/Model/Attributes.cs new file mode 100644 index 000000000..557efb06a --- /dev/null +++ b/Services/Cts/V3/Model/Attributes.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cts.V3.Model +{ + /// + /// 临时安全凭据的属性。 + /// + public class Attributes + { + + /// + /// 颁发临时安全凭证时的时间(timestamp,为标准UTC时间,毫秒级,13位数字)。 + /// + [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreatedAt { get; set; } + + /// + /// 是否已经通过MFA身份认证。 + /// + [JsonProperty("mfa_authenticated", NullValueHandling = NullValueHandling.Ignore)] + public string MfaAuthenticated { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Attributes {\n"); + sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); + sb.Append(" mfaAuthenticated: ").Append(MfaAuthenticated).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as Attributes); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(Attributes input) + { + if (input == null) + return false; + + return + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && + ( + this.MfaAuthenticated == input.MfaAuthenticated || + (this.MfaAuthenticated != null && + this.MfaAuthenticated.Equals(input.MfaAuthenticated)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.CreatedAt != null) + hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); + if (this.MfaAuthenticated != null) + hashCode = hashCode * 59 + this.MfaAuthenticated.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cts/V3/Model/ListTracesRequest.cs b/Services/Cts/V3/Model/ListTracesRequest.cs index 4c14fad67..4e21f8ad8 100644 --- a/Services/Cts/V3/Model/ListTracesRequest.cs +++ b/Services/Cts/V3/Model/ListTracesRequest.cs @@ -348,6 +348,20 @@ public bool Equals(TraceRatingEnum obj) [SDKProperty("trace_rating", IsQuery = true)] [JsonProperty("trace_rating", NullValueHandling = NullValueHandling.Ignore)] public TraceRatingEnum TraceRating { get; set; } + /// + /// 标示查询事件列表对应的访问密钥ID。包含临时访问凭证和永久访问密钥。 + /// + [SDKProperty("access_key_id", IsQuery = true)] + [JsonProperty("access_key_id", NullValueHandling = NullValueHandling.Ignore)] + public string AccessKeyId { get; set; } + + /// + /// 标示查询事件列表对应的企业项目ID。 + /// + [SDKProperty("enterprise_project_id", IsQuery = true)] + [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] + public string EnterpriseProjectId { get; set; } + /// @@ -371,6 +385,8 @@ public override string ToString() sb.Append(" traceId: ").Append(TraceId).Append("\n"); sb.Append(" traceName: ").Append(TraceName).Append("\n"); sb.Append(" traceRating: ").Append(TraceRating).Append("\n"); + sb.Append(" accessKeyId: ").Append(AccessKeyId).Append("\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -461,6 +477,16 @@ public bool Equals(ListTracesRequest input) this.TraceRating == input.TraceRating || (this.TraceRating != null && this.TraceRating.Equals(input.TraceRating)) + ) && + ( + this.AccessKeyId == input.AccessKeyId || + (this.AccessKeyId != null && + this.AccessKeyId.Equals(input.AccessKeyId)) + ) && + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + (this.EnterpriseProjectId != null && + this.EnterpriseProjectId.Equals(input.EnterpriseProjectId)) ); } @@ -500,6 +526,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.TraceName.GetHashCode(); if (this.TraceRating != null) hashCode = hashCode * 59 + this.TraceRating.GetHashCode(); + if (this.AccessKeyId != null) + hashCode = hashCode * 59 + this.AccessKeyId.GetHashCode(); + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); return hashCode; } } diff --git a/Services/Cts/V3/Model/SessionContext.cs b/Services/Cts/V3/Model/SessionContext.cs new file mode 100644 index 000000000..0c886c87d --- /dev/null +++ b/Services/Cts/V3/Model/SessionContext.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Cts.V3.Model +{ + /// + /// 临时安全凭据的属性。 + /// + public class SessionContext + { + + /// + /// + /// + [JsonProperty("attributes", NullValueHandling = NullValueHandling.Ignore)] + public Attributes Attributes { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class SessionContext {\n"); + sb.Append(" attributes: ").Append(Attributes).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as SessionContext); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(SessionContext input) + { + if (input == null) + return false; + + return + ( + this.Attributes == input.Attributes || + (this.Attributes != null && + this.Attributes.Equals(input.Attributes)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Attributes != null) + hashCode = hashCode * 59 + this.Attributes.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Cts/V3/Model/Traces.cs b/Services/Cts/V3/Model/Traces.cs index 35624fdd2..fb8e5bfc7 100644 --- a/Services/Cts/V3/Model/Traces.cs +++ b/Services/Cts/V3/Model/Traces.cs @@ -262,6 +262,18 @@ public bool Equals(TraceRatingEnum obj) [JsonProperty("resource_url", NullValueHandling = NullValueHandling.Ignore)] public string ResourceUrl { get; set; } + /// + /// 标识资源所在的企业项目ID。 + /// + [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] + public string EnterpriseProjectId { get; set; } + + /// + /// 标识资源所在的账号ID。仅在跨租户操作资源时有值。 + /// + [JsonProperty("resource_account_id", NullValueHandling = NullValueHandling.Ignore)] + public string ResourceAccountId { get; set; } + /// @@ -292,6 +304,8 @@ public override string ToString() sb.Append(" locationInfo: ").Append(LocationInfo).Append("\n"); sb.Append(" endpoint: ").Append(Endpoint).Append("\n"); sb.Append(" resourceUrl: ").Append(ResourceUrl).Append("\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); + sb.Append(" resourceAccountId: ").Append(ResourceAccountId).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -417,6 +431,16 @@ public bool Equals(Traces input) this.ResourceUrl == input.ResourceUrl || (this.ResourceUrl != null && this.ResourceUrl.Equals(input.ResourceUrl)) + ) && + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + (this.EnterpriseProjectId != null && + this.EnterpriseProjectId.Equals(input.EnterpriseProjectId)) + ) && + ( + this.ResourceAccountId == input.ResourceAccountId || + (this.ResourceAccountId != null && + this.ResourceAccountId.Equals(input.ResourceAccountId)) ); } @@ -470,6 +494,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Endpoint.GetHashCode(); if (this.ResourceUrl != null) hashCode = hashCode * 59 + this.ResourceUrl.GetHashCode(); + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); + if (this.ResourceAccountId != null) + hashCode = hashCode * 59 + this.ResourceAccountId.GetHashCode(); return hashCode; } } diff --git a/Services/Cts/V3/Model/UserInfo.cs b/Services/Cts/V3/Model/UserInfo.cs index 5d4717e58..628865e65 100644 --- a/Services/Cts/V3/Model/UserInfo.cs +++ b/Services/Cts/V3/Model/UserInfo.cs @@ -15,25 +15,193 @@ namespace HuaweiCloud.SDK.Cts.V3.Model /// public class UserInfo { + /// + /// 是否是根用户。 - 值为“true”时,表示操作者是根用户。 - 值为“false”时,表示操作者是委托会话身份、联邦身份或非根用户的 IAM 用户。 + /// + /// 是否是根用户。 - 值为“true”时,表示操作者是根用户。 - 值为“false”时,表示操作者是委托会话身份、联邦身份或非根用户的 IAM 用户。 + [JsonConverter(typeof(EnumClassConverter))] + public class PrincipalIsRootUserEnum + { + /// + /// Enum TRUE for value: true + /// + public static readonly PrincipalIsRootUserEnum TRUE = new PrincipalIsRootUserEnum("true"); + + /// + /// Enum FALSE for value: false + /// + public static readonly PrincipalIsRootUserEnum FALSE = new PrincipalIsRootUserEnum("false"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "true", TRUE }, + { "false", FALSE }, + }; + + private string _value; + + public PrincipalIsRootUserEnum() + { + + } + + public PrincipalIsRootUserEnum(string value) + { + _value = value; + } + + public static PrincipalIsRootUserEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as PrincipalIsRootUserEnum)) + { + return true; + } + + return false; + } + + public bool Equals(PrincipalIsRootUserEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(PrincipalIsRootUserEnum a, PrincipalIsRootUserEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(PrincipalIsRootUserEnum a, PrincipalIsRootUserEnum b) + { + return !(a == b); + } + } + /// - /// 账号ID,参见《云审计服务API参考》“获取账号ID和项目ID”章节。 + /// 用户ID,参见《云审计服务API参考》“获取账号ID和项目ID”章节。 /// [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public string Id { get; set; } /// - /// 账号名称。 + /// 用户名称。 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } + /// + /// 用户名称。 + /// + [JsonProperty("user_name", NullValueHandling = NullValueHandling.Ignore)] + public string UserName { get; set; } + /// /// /// [JsonProperty("domain", NullValueHandling = NullValueHandling.Ignore)] public BaseUser Domain { get; set; } + /// + /// 账号ID,参见《云审计服务API参考》“获取账号ID和项目ID”章节。 + /// + [JsonProperty("account_id", NullValueHandling = NullValueHandling.Ignore)] + public string AccountId { get; set; } + + /// + /// 访问密钥ID。 + /// + [JsonProperty("access_key_id", NullValueHandling = NullValueHandling.Ignore)] + public string AccessKeyId { get; set; } + + /// + /// 操作用户身份的 URN。 如果是 IAM 用户身份,格式如 iam::<account-id>:user:<user-name>。 如果是 IAM 委托会话 身份,格式如 sts::<account-id>:assumed-agency:<agency-name>/<agency-session-name>。 如果是 IAM 联邦身份,格式如 sts::<account-id>:external-user:<idp_id>/<user-session-name>。 + /// + [JsonProperty("principal_urn", NullValueHandling = NullValueHandling.Ignore)] + public string PrincipalUrn { get; set; } + + /// + /// 操作用户身份Id。 - 如果是 IAM 用户身份,格式为 <user-id>。 - 如果是 IAM 委托会话身份,格式为 <agency-id>:<agency-session-name>。 - 如果是 IAM 联邦身份,格式为 <idp_id>:<user-session-name> + /// + [JsonProperty("principal_id", NullValueHandling = NullValueHandling.Ignore)] + public string PrincipalId { get; set; } + + /// + /// 是否是根用户。 - 值为“true”时,表示操作者是根用户。 - 值为“false”时,表示操作者是委托会话身份、联邦身份或非根用户的 IAM 用户。 + /// + [JsonProperty("principal_is_root_user", NullValueHandling = NullValueHandling.Ignore)] + public PrincipalIsRootUserEnum PrincipalIsRootUser { get; set; } + /// + /// 操作者身份类型。 + /// + [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] + public string Type { get; set; } + + /// + /// 发出请求的服务的名称。控制台操作时为[\"service.console\" ] + /// + [JsonProperty("invoked_by", NullValueHandling = NullValueHandling.Ignore)] + public List InvokedBy { get; set; } + + /// + /// + /// + [JsonProperty("session_context", NullValueHandling = NullValueHandling.Ignore)] + public SessionContext SessionContext { get; set; } + /// @@ -45,7 +213,16 @@ public override string ToString() sb.Append("class UserInfo {\n"); sb.Append(" id: ").Append(Id).Append("\n"); sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" userName: ").Append(UserName).Append("\n"); sb.Append(" domain: ").Append(Domain).Append("\n"); + sb.Append(" accountId: ").Append(AccountId).Append("\n"); + sb.Append(" accessKeyId: ").Append(AccessKeyId).Append("\n"); + sb.Append(" principalUrn: ").Append(PrincipalUrn).Append("\n"); + sb.Append(" principalId: ").Append(PrincipalId).Append("\n"); + sb.Append(" principalIsRootUser: ").Append(PrincipalIsRootUser).Append("\n"); + sb.Append(" type: ").Append(Type).Append("\n"); + sb.Append(" invokedBy: ").Append(InvokedBy).Append("\n"); + sb.Append(" sessionContext: ").Append(SessionContext).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -77,10 +254,56 @@ public bool Equals(UserInfo input) (this.Name != null && this.Name.Equals(input.Name)) ) && + ( + this.UserName == input.UserName || + (this.UserName != null && + this.UserName.Equals(input.UserName)) + ) && ( this.Domain == input.Domain || (this.Domain != null && this.Domain.Equals(input.Domain)) + ) && + ( + this.AccountId == input.AccountId || + (this.AccountId != null && + this.AccountId.Equals(input.AccountId)) + ) && + ( + this.AccessKeyId == input.AccessKeyId || + (this.AccessKeyId != null && + this.AccessKeyId.Equals(input.AccessKeyId)) + ) && + ( + this.PrincipalUrn == input.PrincipalUrn || + (this.PrincipalUrn != null && + this.PrincipalUrn.Equals(input.PrincipalUrn)) + ) && + ( + this.PrincipalId == input.PrincipalId || + (this.PrincipalId != null && + this.PrincipalId.Equals(input.PrincipalId)) + ) && + ( + this.PrincipalIsRootUser == input.PrincipalIsRootUser || + (this.PrincipalIsRootUser != null && + this.PrincipalIsRootUser.Equals(input.PrincipalIsRootUser)) + ) && + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.InvokedBy == input.InvokedBy || + this.InvokedBy != null && + input.InvokedBy != null && + this.InvokedBy.SequenceEqual(input.InvokedBy) + ) && + ( + this.SessionContext == input.SessionContext || + (this.SessionContext != null && + this.SessionContext.Equals(input.SessionContext)) ); } @@ -96,8 +319,26 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Id.GetHashCode(); if (this.Name != null) hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.UserName != null) + hashCode = hashCode * 59 + this.UserName.GetHashCode(); if (this.Domain != null) hashCode = hashCode * 59 + this.Domain.GetHashCode(); + if (this.AccountId != null) + hashCode = hashCode * 59 + this.AccountId.GetHashCode(); + if (this.AccessKeyId != null) + hashCode = hashCode * 59 + this.AccessKeyId.GetHashCode(); + if (this.PrincipalUrn != null) + hashCode = hashCode * 59 + this.PrincipalUrn.GetHashCode(); + if (this.PrincipalId != null) + hashCode = hashCode * 59 + this.PrincipalId.GetHashCode(); + if (this.PrincipalIsRootUser != null) + hashCode = hashCode * 59 + this.PrincipalIsRootUser.GetHashCode(); + if (this.Type != null) + hashCode = hashCode * 59 + this.Type.GetHashCode(); + if (this.InvokedBy != null) + hashCode = hashCode * 59 + this.InvokedBy.GetHashCode(); + if (this.SessionContext != null) + hashCode = hashCode * 59 + this.SessionContext.GetHashCode(); return hashCode; } } diff --git a/Services/Dbss/Dbss.csproj b/Services/Dbss/Dbss.csproj index 283f81f2b..5275e3491 100644 --- a/Services/Dbss/Dbss.csproj +++ b/Services/Dbss/Dbss.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Dbss - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Dcs/Dcs.csproj b/Services/Dcs/Dcs.csproj index 9d368034f..e58168fcc 100644 --- a/Services/Dcs/Dcs.csproj +++ b/Services/Dcs/Dcs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Dcs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Dds/Dds.csproj b/Services/Dds/Dds.csproj index 4701efad4..b5a2615db 100644 --- a/Services/Dds/Dds.csproj +++ b/Services/Dds/Dds.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Dds - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Demo/Demo.csproj b/Services/Demo/Demo.csproj index 834bdb7c7..5949141e5 100644 --- a/Services/Demo/Demo.csproj +++ b/Services/Demo/Demo.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Demo - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Dns/Dns.csproj b/Services/Dns/Dns.csproj index ca8082301..d5bc60a6f 100644 --- a/Services/Dns/Dns.csproj +++ b/Services/Dns/Dns.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Dns - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Dns/V2/Region/DnsRegion.cs b/Services/Dns/V2/Region/DnsRegion.cs index d204c851b..37297ca5e 100644 --- a/Services/Dns/V2/Region/DnsRegion.cs +++ b/Services/Dns/V2/Region/DnsRegion.cs @@ -43,6 +43,12 @@ public class DnsRegion "https://dns.cn-south-2.myhuaweicloud.com"); public static readonly Region AP_SOUTHEAST_4 = new Region("ap-southeast-4", "https://dns.ap-southeast-4.myhuaweicloud.com"); + public static readonly Region AE_AD_1 = new Region("ae-ad-1", + "https://dns.ae-ad-1.myhuaweicloud.com"); + public static readonly Region EU_WEST_0 = new Region("eu-west-0", + "https://dns.eu-west-0.myhuaweicloud.com"); + public static readonly Region RU_MOSCOW_1 = new Region("ru-moscow-1", + "https://dns.ru-moscow-1.myhuaweicloud.com"); private static readonly IRegionProvider Provider = RegionProviderChain.GetDefault("DNS"); @@ -66,6 +72,9 @@ public class DnsRegion { "cn-north-2", CN_NORTH_2 }, { "cn-south-2", CN_SOUTH_2 }, { "ap-southeast-4", AP_SOUTHEAST_4 }, + { "ae-ad-1", AE_AD_1 }, + { "eu-west-0", EU_WEST_0 }, + { "ru-moscow-1", RU_MOSCOW_1 }, }; public static Region ValueOf(string regionId) diff --git a/Services/Drs/Drs.csproj b/Services/Drs/Drs.csproj index d1e130aef..719bfa4cf 100644 --- a/Services/Drs/Drs.csproj +++ b/Services/Drs/Drs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Drs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Drs/V3/Model/CreateJobReq.cs b/Services/Drs/V3/Model/CreateJobReq.cs index a5ee62004..73b06908a 100644 --- a/Services/Drs/V3/Model/CreateJobReq.cs +++ b/Services/Drs/V3/Model/CreateJobReq.cs @@ -530,21 +530,51 @@ public bool Equals(NetTypeEnum obj) } /// - /// 规格类型。 + /// 规格类型。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 具体某种场景支持的取值可以通过[查询可用的Node规格接口](https://support.huaweicloud.com/api-drs/drs_03_0239.html)获取。 /// - /// 规格类型。 + /// 规格类型。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 具体某种场景支持的取值可以通过[查询可用的Node规格接口](https://support.huaweicloud.com/api-drs/drs_03_0239.html)获取。 [JsonConverter(typeof(EnumClassConverter))] public class NodeTypeEnum { + /// + /// Enum MICRO for value: micro + /// + public static readonly NodeTypeEnum MICRO = new NodeTypeEnum("micro"); + + /// + /// Enum SMALL for value: small + /// + public static readonly NodeTypeEnum SMALL = new NodeTypeEnum("small"); + + /// + /// Enum MEDIUM for value: medium + /// + public static readonly NodeTypeEnum MEDIUM = new NodeTypeEnum("medium"); + /// /// Enum HIGH for value: high /// public static readonly NodeTypeEnum HIGH = new NodeTypeEnum("high"); + /// + /// Enum XLARGE for value: xlarge + /// + public static readonly NodeTypeEnum XLARGE = new NodeTypeEnum("xlarge"); + + /// + /// Enum _2XLARGE for value: 2xlarge + /// + public static readonly NodeTypeEnum _2XLARGE = new NodeTypeEnum("2xlarge"); + private static readonly Dictionary StaticFields = new Dictionary() { + { "micro", MICRO }, + { "small", SMALL }, + { "medium", MEDIUM }, { "high", HIGH }, + { "xlarge", XLARGE }, + { "2xlarge", _2XLARGE }, }; private string _value; @@ -932,7 +962,7 @@ public bool Equals(ChargingModeEnum obj) public int? NodeNum { get; set; } /// - /// 规格类型。 + /// 规格类型。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 具体某种场景支持的取值可以通过[查询可用的Node规格接口](https://support.huaweicloud.com/api-drs/drs_03_0239.html)获取。 /// [JsonProperty("node_type", NullValueHandling = NullValueHandling.Ignore)] public NodeTypeEnum NodeType { get; set; } diff --git a/Services/Drs/V3/Model/ModifyJobReq.cs b/Services/Drs/V3/Model/ModifyJobReq.cs index cc184214e..f8433b61a 100644 --- a/Services/Drs/V3/Model/ModifyJobReq.cs +++ b/Services/Drs/V3/Model/ModifyJobReq.cs @@ -137,21 +137,51 @@ public bool Equals(TaskTypeEnum obj) } /// - /// node规格类型,测试连接之后修改调用时必填。 + /// node规格类型,测试连接之后修改调用时必填。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 /// - /// node规格类型,测试连接之后修改调用时必填。 + /// node规格类型,测试连接之后修改调用时必填。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 [JsonConverter(typeof(EnumClassConverter))] public class NodeTypeEnum { + /// + /// Enum MICRO for value: micro + /// + public static readonly NodeTypeEnum MICRO = new NodeTypeEnum("micro"); + + /// + /// Enum SMALL for value: small + /// + public static readonly NodeTypeEnum SMALL = new NodeTypeEnum("small"); + + /// + /// Enum MEDIUM for value: medium + /// + public static readonly NodeTypeEnum MEDIUM = new NodeTypeEnum("medium"); + /// /// Enum HIGH for value: high /// public static readonly NodeTypeEnum HIGH = new NodeTypeEnum("high"); + /// + /// Enum XLARGE for value: xlarge + /// + public static readonly NodeTypeEnum XLARGE = new NodeTypeEnum("xlarge"); + + /// + /// Enum _2XLARGE for value: 2xlarge + /// + public static readonly NodeTypeEnum _2XLARGE = new NodeTypeEnum("2xlarge"); + private static readonly Dictionary StaticFields = new Dictionary() { + { "micro", MICRO }, + { "small", SMALL }, + { "medium", MEDIUM }, { "high", HIGH }, + { "xlarge", XLARGE }, + { "2xlarge", _2XLARGE }, }; private string _value; @@ -802,7 +832,7 @@ public bool Equals(DbUseTypeEnum obj) public Endpoint TargetEndpoint { get; set; } /// - /// node规格类型,测试连接之后修改调用时必填。 + /// node规格类型,测试连接之后修改调用时必填。取值: - micro:极小规格。 - small:小规格。 - medium:中规格。 - high:大规格。 - xlarge:超大规格。 - 2xlarge:极大规格。 /// [JsonProperty("node_type", NullValueHandling = NullValueHandling.Ignore)] public NodeTypeEnum NodeType { get; set; } diff --git a/Services/Ecs/Ecs.csproj b/Services/Ecs/Ecs.csproj index 309dbab1e..8bc56b248 100644 --- a/Services/Ecs/Ecs.csproj +++ b/Services/Ecs/Ecs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ecs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ecs/V2/Model/ASICAcceleratorInfo.cs b/Services/Ecs/V2/Model/ASICAcceleratorInfo.cs new file mode 100644 index 000000000..dc67bc01c --- /dev/null +++ b/Services/Ecs/V2/Model/ASICAcceleratorInfo.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Ecs.V2.Model +{ + /// + /// + /// + public class ASICAcceleratorInfo + { + + /// + /// ASIC设备名称。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// ASIC设备数量。 + /// + [JsonProperty("count", NullValueHandling = NullValueHandling.Ignore)] + public int? Count { get; set; } + + /// + /// ASIC设备的内存,单位为MB。 + /// + [JsonProperty("memory_mb", NullValueHandling = NullValueHandling.Ignore)] + public int? MemoryMb { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ASICAcceleratorInfo {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" count: ").Append(Count).Append("\n"); + sb.Append(" memoryMb: ").Append(MemoryMb).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ASICAcceleratorInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ASICAcceleratorInfo input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Count == input.Count || + (this.Count != null && + this.Count.Equals(input.Count)) + ) && + ( + this.MemoryMb == input.MemoryMb || + (this.MemoryMb != null && + this.MemoryMb.Equals(input.MemoryMb)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Count != null) + hashCode = hashCode * 59 + this.Count.GetHashCode(); + if (this.MemoryMb != null) + hashCode = hashCode * 59 + this.MemoryMb.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Ecs/V2/Model/GpuInfo.cs b/Services/Ecs/V2/Model/GpuInfo.cs new file mode 100644 index 000000000..a36275a7f --- /dev/null +++ b/Services/Ecs/V2/Model/GpuInfo.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Ecs.V2.Model +{ + /// + /// + /// + public class GpuInfo + { + + /// + /// GPU设备名称。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// GPU设备数量。 + /// + [JsonProperty("count", NullValueHandling = NullValueHandling.Ignore)] + public int? Count { get; set; } + + /// + /// GPU设备的内存,单位为MB。 + /// + [JsonProperty("memory_mb", NullValueHandling = NullValueHandling.Ignore)] + public int? MemoryMb { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class GpuInfo {\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" count: ").Append(Count).Append("\n"); + sb.Append(" memoryMb: ").Append(MemoryMb).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as GpuInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(GpuInfo input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.Count == input.Count || + (this.Count != null && + this.Count.Equals(input.Count)) + ) && + ( + this.MemoryMb == input.MemoryMb || + (this.MemoryMb != null && + this.MemoryMb.Equals(input.MemoryMb)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Count != null) + hashCode = hashCode * 59 + this.Count.GetHashCode(); + if (this.MemoryMb != null) + hashCode = hashCode * 59 + this.MemoryMb.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Ecs/V2/Model/ServerFlavor.cs b/Services/Ecs/V2/Model/ServerFlavor.cs index 428e62366..747030c3e 100644 --- a/Services/Ecs/V2/Model/ServerFlavor.cs +++ b/Services/Ecs/V2/Model/ServerFlavor.cs @@ -46,6 +46,18 @@ public class ServerFlavor [JsonProperty("ram", NullValueHandling = NullValueHandling.Ignore)] public string Ram { get; set; } + /// + /// 该云服务器规格对应的GPU设备。 + /// + [JsonProperty("gpus", NullValueHandling = NullValueHandling.Ignore)] + public List Gpus { get; set; } + + /// + /// 该云服务器规格对应的ASIC设备。 + /// + [JsonProperty("asic_accelerators", NullValueHandling = NullValueHandling.Ignore)] + public List AsicAccelerators { get; set; } + /// @@ -60,6 +72,8 @@ public override string ToString() sb.Append(" disk: ").Append(Disk).Append("\n"); sb.Append(" vcpus: ").Append(Vcpus).Append("\n"); sb.Append(" ram: ").Append(Ram).Append("\n"); + sb.Append(" gpus: ").Append(Gpus).Append("\n"); + sb.Append(" asicAccelerators: ").Append(AsicAccelerators).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -105,6 +119,18 @@ public bool Equals(ServerFlavor input) this.Ram == input.Ram || (this.Ram != null && this.Ram.Equals(input.Ram)) + ) && + ( + this.Gpus == input.Gpus || + this.Gpus != null && + input.Gpus != null && + this.Gpus.SequenceEqual(input.Gpus) + ) && + ( + this.AsicAccelerators == input.AsicAccelerators || + this.AsicAccelerators != null && + input.AsicAccelerators != null && + this.AsicAccelerators.SequenceEqual(input.AsicAccelerators) ); } @@ -126,6 +152,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Vcpus.GetHashCode(); if (this.Ram != null) hashCode = hashCode * 59 + this.Ram.GetHashCode(); + if (this.Gpus != null) + hashCode = hashCode * 59 + this.Gpus.GetHashCode(); + if (this.AsicAccelerators != null) + hashCode = hashCode * 59 + this.AsicAccelerators.GetHashCode(); return hashCode; } } diff --git a/Services/Eip/Eip.csproj b/Services/Eip/Eip.csproj index 41c74283c..d3d9b24da 100644 --- a/Services/Eip/Eip.csproj +++ b/Services/Eip/Eip.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Eip - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Elb/Elb.csproj b/Services/Elb/Elb.csproj index b4fe488f7..ecc464c47 100644 --- a/Services/Elb/Elb.csproj +++ b/Services/Elb/Elb.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Elb - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Elb/V3/ElbAsyncClient.cs b/Services/Elb/V3/ElbAsyncClient.cs index 373423657..5fc4978b7 100644 --- a/Services/Elb/V3/ElbAsyncClient.cs +++ b/Services/Elb/V3/ElbAsyncClient.cs @@ -108,7 +108,7 @@ public async Task BatchRemoveAvailableZonesAs var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/loadbalancers/{loadbalancer_id}/availability-zone/batch-remove", urlParam); var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", batchRemoveAvailableZonesRequest); var response = await DoHttpRequestAsync("POST", request); - return XmlUtils.DeSerialize(response); + return JsonUtils.DeSerialize(response); } public AsyncInvoker BatchRemoveAvailableZonesAsyncInvoker(BatchRemoveAvailableZonesRequest batchRemoveAvailableZonesRequest) @@ -117,7 +117,7 @@ public AsyncInvoker BatchRemoveAvailableZones urlParam.Add("loadbalancer_id", batchRemoveAvailableZonesRequest.LoadbalancerId.ToString()); var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/loadbalancers/{loadbalancer_id}/availability-zone/batch-remove", urlParam); var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", batchRemoveAvailableZonesRequest); - return new AsyncInvoker(this, "POST", request, XmlUtils.DeSerialize); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); } /// @@ -221,6 +221,30 @@ public AsyncInvoker CreateCertificateAsyncInvoker(Cre return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); } + /// + /// 修改证书私钥字段回显开关 + /// + /// 开启或关闭证书私钥字段回显开关。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task CreateCertificatePrivateKeyEchoAsync(CreateCertificatePrivateKeyEchoRequest createCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createCertificatePrivateKeyEchoRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker CreateCertificatePrivateKeyEchoAsyncInvoker(CreateCertificatePrivateKeyEchoRequest createCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createCertificatePrivateKeyEchoRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + /// /// 创建健康检查 /// @@ -322,22 +346,16 @@ public AsyncInvoker CreateListenerAsyncInvoker(CreateLis /// /// 创建负载均衡器 /// - /// 创建负载均衡器。 - /// 1. 若要创建内网IPv4负载均衡器,则需要设置vip_subnet_cidr_id。 - /// 2. 若要创建公网IPv4负载均衡器,则需要设置publicip,以及设置vpc_id和vip_subnet_cidr_id这两个参数中的一个。 - /// 3. 若要绑定有已有公网IPv4地址, - /// 则需要设置publicip_ids,以及设置vpc_id和vip_subnet_cidr_id这两个参数中的一个。 - /// 4. 若要创建内网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id。 - /// 5. 若要创建公网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id和ipv6_bandwidth。 - /// 6. 不支持绑定已有未使用的内网IPv4、内网IPv6或公网IPv6地址。 - /// 7. l4_flavor_id需要传入网络型规格id,l7_flavor_id需要传入应用型规格id。 - /// - /// [> 关于计费: - /// - 若billing_info非空时,包周期。 - /// - 若billing_info为空,autoscaling.enable=true时,弹性计费。 - /// - 若billing_info为空,autoscaling.enable=false或未设置,charge_mode=lcu,按量计费。 - /// - 若billing_info为空,autoscaling.enable=false或未设置,charge_mode=flavor,固定规格按需计费。](tag:hws) - /// [> 不支持创建IPv6地址负载均衡器](tag:dt,dt_test) + /// 创建独享型负载均衡器,包括按需及包周期计费负载均衡器。 + /// 1. 若要创建内网IPv4负载均衡器,则需要传入vip_subnet_cidr_id。 + /// 2. 若要创建公网IPv4负载均衡器,则需要传入publicip,以及传入vpc_id和vip_subnet_cidr_id这两个参数中的一个。 + /// 3. 若要绑定有已有公网IPv4地址,则需要传入publicip_ids,以及传入vpc_id和vip_subnet_cidr_id这两个参数中的一个。 + /// 4. 若要创建内网双栈负载均衡器,则需要传入ipv6_vip_virsubnet_id。 + /// 5. 若要创建公网双栈负载均衡器,则需要传入ipv6_vip_virsubnet_id和ipv6_bandwidth。 + /// 6. 若要创建网络型负载均衡器,则需要传入l4_flavor_id(网络型规格ID);若要创建应用型负载均衡器,则需要传入l7_flavor_id(应用型规格ID);若要创建网络型+应用型负载均衡器,则需要传入l4_flavor_id和l7_flavor_id。 + /// 7. 若要创建包周期负载均衡器,则需要传入prepaid_options,否则创建按需计费负载均衡器。 + /// 8. 按需计费分为固定规格计费和弹性规格计费,根据创建时所选规格的类型决定计费方式。具体规格说明见创建LB请求参数l4_flavor_id和l7_flavor_id。 + /// [9.若要创建gateway类型的负载均衡器,指定loadbalancer_type=“gateway”,不支持指定vip_address,ipv6_vip_address, 不支持公网类型。如果要指定规格,则从请求参数gw_flavor_id传入。](tag:hws_eu) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -361,7 +379,7 @@ public AsyncInvoker CreateLoadBalancerAsyncInvoker(C /// /// 创建云日志 /// - /// 创建云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 创建云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -461,7 +479,7 @@ public AsyncInvoker CreatePoolAsyncInvoker(CreatePoolRequest /// /// 创建自定义安全策略。用于在创建HTTPS监听器时,请求参数中指定security_policy_id来设置监听器的自定义安全策略。 /// - /// [荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// [荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -695,7 +713,7 @@ public AsyncInvoker DeleteLoadBalancerForceAsyn /// /// 删除云日志 /// - /// 删除云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 删除云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -801,7 +819,7 @@ public AsyncInvoker DeletePoolAsyncInvoker(DeletePoolRequest /// /// 删除自定义安全策略 /// - /// 删除自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 删除自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -827,7 +845,7 @@ public AsyncInvoker DeleteSecurityPolicyAsyncInvok /// /// 后端服务器全局列表 /// - /// 查询当前租户下的后端服务器列表。 + /// 查询当前项目下的后端服务器列表。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -907,7 +925,7 @@ public AsyncInvoker ListCertificatesAsyncInvoker(ListC /// /// 查询规格列表 /// - /// 查询租户在当前region下可用的负载均衡规格列表。 + /// 查询当前region下可用的负载均衡规格列表。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1053,7 +1071,7 @@ public AsyncInvoker ListLoadBalancersAsyncInvoker(Lis /// /// 查询云日志列表 /// - /// 查询云日志列表。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 查询云日志列表。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1175,7 +1193,7 @@ public AsyncInvoker ListQuotaDetailsAsyncInvoker(ListQ /// /// 查询自定义安全策略列表 /// - /// 查询自定义安全策略列表。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 查询自定义安全策略列表。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1248,6 +1266,30 @@ public AsyncInvoker ShowCertificateAsyncInvoker(ShowCer return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询证书私钥字段回显开关 + /// + /// 查询证书私钥回显开关当前的状态,开启或关闭。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowCertificatePrivateKeyEchoAsync(ShowCertificatePrivateKeyEchoRequest showCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showCertificatePrivateKeyEchoRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowCertificatePrivateKeyEchoAsyncInvoker(ShowCertificatePrivateKeyEchoRequest showCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showCertificatePrivateKeyEchoRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询规格详情 /// @@ -1438,7 +1480,7 @@ public AsyncInvoker ShowLoadBalancerStatusAsyncI /// /// 查询云日志详情 /// - /// 云日志详情。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 云日志详情。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1568,7 +1610,7 @@ public AsyncInvoker ShowQuotaAsyncInvoker(ShowQuotaRequest sh /// /// 查询自定义安全策略详情 /// - /// 查询自定义安全策略详情。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 查询自定义安全策略详情。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1752,7 +1794,7 @@ public AsyncInvoker UpdateLoadBalancerAsyncInvoker(U /// /// 更新云日志 /// - /// 更新云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 更新云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1832,7 +1874,7 @@ public AsyncInvoker UpdatePoolAsyncInvoker(UpdatePoolRequest /// /// 更新自定义安全策略 /// - /// 更新自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 更新自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1923,7 +1965,7 @@ public AsyncInvoker BatchDeleteIpListAsyncInvoker(Bat /// - 计算出来的预占IP数大于等于最终实际占用的IP数。 /// - 总占用IP数量,即整个LB所占用的IP数量。 /// - /// [不支持传入l7_flavor_id](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// [不支持传入l7_flavor_id](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1951,7 +1993,7 @@ public AsyncInvoker CountPreoccupyIpNumAsyncInvoker /// /// 需要注意0.0.0.0与0.0.0.0/32视为重复,0:0:0:0:0:0:0:1与::1与::1/128视为重复,只会保存其中一个。 /// - /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1975,7 +2017,7 @@ public AsyncInvoker CreateIpGroupAsyncInvoker(CreateIpGro /// /// 删除IP地址组 /// - /// 删除ip地址组。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 删除ip地址组。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2001,7 +2043,7 @@ public AsyncInvoker DeleteIpGroupAsyncInvoker(DeleteIpGro /// /// 查询IP地址组列表 /// - /// 查询IP地址组列表。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 查询IP地址组列表。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2025,7 +2067,7 @@ public AsyncInvoker ListIpGroupsAsyncInvoker(ListIpGroupsR /// /// 查询IP地址组详情 /// - /// 获取IP地址组详情。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 获取IP地址组详情。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2056,7 +2098,7 @@ public AsyncInvoker ShowIpGroupAsyncInvoker(ShowIpGroupRequ /// /// 需要注意0.0.0.0与0.0.0.0/32视为重复,0:0:0:0:0:0:0:1与::1与::1/128视为重复,只会保存其中一个。 /// - /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// diff --git a/Services/Elb/V3/ElbClient.cs b/Services/Elb/V3/ElbClient.cs index 4ca613ef2..751f67f44 100644 --- a/Services/Elb/V3/ElbClient.cs +++ b/Services/Elb/V3/ElbClient.cs @@ -107,7 +107,7 @@ public BatchRemoveAvailableZonesResponse BatchRemoveAvailableZones(BatchRemoveAv var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/loadbalancers/{loadbalancer_id}/availability-zone/batch-remove", urlParam); var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", batchRemoveAvailableZonesRequest); var response = DoHttpRequestSync("POST", request); - return XmlUtils.DeSerialize(response); + return JsonUtils.DeSerialize(response); } public SyncInvoker BatchRemoveAvailableZonesInvoker(BatchRemoveAvailableZonesRequest batchRemoveAvailableZonesRequest) @@ -116,7 +116,7 @@ public SyncInvoker BatchRemoveAvailableZonesI urlParam.Add("loadbalancer_id", batchRemoveAvailableZonesRequest.LoadbalancerId.ToString()); var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/loadbalancers/{loadbalancer_id}/availability-zone/batch-remove", urlParam); var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", batchRemoveAvailableZonesRequest); - return new SyncInvoker(this, "POST", request, XmlUtils.DeSerialize); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); } /// @@ -220,6 +220,30 @@ public SyncInvoker CreateCertificateInvoker(CreateCer return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); } + /// + /// 修改证书私钥字段回显开关 + /// + /// 开启或关闭证书私钥字段回显开关。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public CreateCertificatePrivateKeyEchoResponse CreateCertificatePrivateKeyEcho(CreateCertificatePrivateKeyEchoRequest createCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createCertificatePrivateKeyEchoRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker CreateCertificatePrivateKeyEchoInvoker(CreateCertificatePrivateKeyEchoRequest createCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", createCertificatePrivateKeyEchoRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerialize); + } + /// /// 创建健康检查 /// @@ -321,22 +345,16 @@ public SyncInvoker CreateListenerInvoker(CreateListenerR /// /// 创建负载均衡器 /// - /// 创建负载均衡器。 - /// 1. 若要创建内网IPv4负载均衡器,则需要设置vip_subnet_cidr_id。 - /// 2. 若要创建公网IPv4负载均衡器,则需要设置publicip,以及设置vpc_id和vip_subnet_cidr_id这两个参数中的一个。 - /// 3. 若要绑定有已有公网IPv4地址, - /// 则需要设置publicip_ids,以及设置vpc_id和vip_subnet_cidr_id这两个参数中的一个。 - /// 4. 若要创建内网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id。 - /// 5. 若要创建公网双栈负载均衡器,则需要设置ipv6_vip_virsubnet_id和ipv6_bandwidth。 - /// 6. 不支持绑定已有未使用的内网IPv4、内网IPv6或公网IPv6地址。 - /// 7. l4_flavor_id需要传入网络型规格id,l7_flavor_id需要传入应用型规格id。 - /// - /// [> 关于计费: - /// - 若billing_info非空时,包周期。 - /// - 若billing_info为空,autoscaling.enable=true时,弹性计费。 - /// - 若billing_info为空,autoscaling.enable=false或未设置,charge_mode=lcu,按量计费。 - /// - 若billing_info为空,autoscaling.enable=false或未设置,charge_mode=flavor,固定规格按需计费。](tag:hws) - /// [> 不支持创建IPv6地址负载均衡器](tag:dt,dt_test) + /// 创建独享型负载均衡器,包括按需及包周期计费负载均衡器。 + /// 1. 若要创建内网IPv4负载均衡器,则需要传入vip_subnet_cidr_id。 + /// 2. 若要创建公网IPv4负载均衡器,则需要传入publicip,以及传入vpc_id和vip_subnet_cidr_id这两个参数中的一个。 + /// 3. 若要绑定有已有公网IPv4地址,则需要传入publicip_ids,以及传入vpc_id和vip_subnet_cidr_id这两个参数中的一个。 + /// 4. 若要创建内网双栈负载均衡器,则需要传入ipv6_vip_virsubnet_id。 + /// 5. 若要创建公网双栈负载均衡器,则需要传入ipv6_vip_virsubnet_id和ipv6_bandwidth。 + /// 6. 若要创建网络型负载均衡器,则需要传入l4_flavor_id(网络型规格ID);若要创建应用型负载均衡器,则需要传入l7_flavor_id(应用型规格ID);若要创建网络型+应用型负载均衡器,则需要传入l4_flavor_id和l7_flavor_id。 + /// 7. 若要创建包周期负载均衡器,则需要传入prepaid_options,否则创建按需计费负载均衡器。 + /// 8. 按需计费分为固定规格计费和弹性规格计费,根据创建时所选规格的类型决定计费方式。具体规格说明见创建LB请求参数l4_flavor_id和l7_flavor_id。 + /// [9.若要创建gateway类型的负载均衡器,指定loadbalancer_type=“gateway”,不支持指定vip_address,ipv6_vip_address, 不支持公网类型。如果要指定规格,则从请求参数gw_flavor_id传入。](tag:hws_eu) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -360,7 +378,7 @@ public SyncInvoker CreateLoadBalancerInvoker(CreateL /// /// 创建云日志 /// - /// 创建云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 创建云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -460,7 +478,7 @@ public SyncInvoker CreatePoolInvoker(CreatePoolRequest creat /// /// 创建自定义安全策略。用于在创建HTTPS监听器时,请求参数中指定security_policy_id来设置监听器的自定义安全策略。 /// - /// [荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// [荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -694,7 +712,7 @@ public SyncInvoker DeleteLoadBalancerForceInvok /// /// 删除云日志 /// - /// 删除云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 删除云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -800,7 +818,7 @@ public SyncInvoker DeletePoolInvoker(DeletePoolRequest delet /// /// 删除自定义安全策略 /// - /// 删除自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 删除自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -826,7 +844,7 @@ public SyncInvoker DeleteSecurityPolicyInvoker(Del /// /// 后端服务器全局列表 /// - /// 查询当前租户下的后端服务器列表。 + /// 查询当前项目下的后端服务器列表。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -906,7 +924,7 @@ public SyncInvoker ListCertificatesInvoker(ListCertifi /// /// 查询规格列表 /// - /// 查询租户在当前region下可用的负载均衡规格列表。 + /// 查询当前region下可用的负载均衡规格列表。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1052,7 +1070,7 @@ public SyncInvoker ListLoadBalancersInvoker(ListLoadB /// /// 查询云日志列表 /// - /// 查询云日志列表。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 查询云日志列表。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1174,7 +1192,7 @@ public SyncInvoker ListQuotaDetailsInvoker(ListQuotaDe /// /// 查询自定义安全策略列表 /// - /// 查询自定义安全策略列表。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 查询自定义安全策略列表。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1247,6 +1265,30 @@ public SyncInvoker ShowCertificateInvoker(ShowCertifica return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询证书私钥字段回显开关 + /// + /// 查询证书私钥回显开关当前的状态,开启或关闭。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowCertificatePrivateKeyEchoResponse ShowCertificatePrivateKeyEcho(ShowCertificatePrivateKeyEchoRequest showCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showCertificatePrivateKeyEchoRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowCertificatePrivateKeyEchoInvoker(ShowCertificatePrivateKeyEchoRequest showCertificatePrivateKeyEchoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/elb/certificates/settings/private-key-echo", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showCertificatePrivateKeyEchoRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询规格详情 /// @@ -1437,7 +1479,7 @@ public SyncInvoker ShowLoadBalancerStatusInvoker /// /// 查询云日志详情 /// - /// 云日志详情。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 云日志详情。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1567,7 +1609,7 @@ public SyncInvoker ShowQuotaInvoker(ShowQuotaRequest showQuot /// /// 查询自定义安全策略详情 /// - /// 查询自定义安全策略详情。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 查询自定义安全策略详情。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1751,7 +1793,7 @@ public SyncInvoker UpdateLoadBalancerInvoker(UpdateL /// /// 更新云日志 /// - /// 更新云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt) + /// 更新云日志。[荷兰region不支持云日志功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1831,7 +1873,7 @@ public SyncInvoker UpdatePoolInvoker(UpdatePoolRequest updat /// /// 更新自定义安全策略 /// - /// 更新自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt) + /// 更新自定义安全策略。[荷兰region不支持自定义安全策略功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1922,7 +1964,7 @@ public SyncInvoker BatchDeleteIpListInvoker(BatchDele /// - 计算出来的预占IP数大于等于最终实际占用的IP数。 /// - 总占用IP数量,即整个LB所占用的IP数量。 /// - /// [不支持传入l7_flavor_id](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// [不支持传入l7_flavor_id](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1950,7 +1992,7 @@ public SyncInvoker CountPreoccupyIpNumInvoker(Count /// /// 需要注意0.0.0.0与0.0.0.0/32视为重复,0:0:0:0:0:0:0:1与::1与::1/128视为重复,只会保存其中一个。 /// - /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -1974,7 +2016,7 @@ public SyncInvoker CreateIpGroupInvoker(CreateIpGroupRequ /// /// 删除IP地址组 /// - /// 删除ip地址组。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 删除ip地址组。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2000,7 +2042,7 @@ public SyncInvoker DeleteIpGroupInvoker(DeleteIpGroupRequ /// /// 查询IP地址组列表 /// - /// 查询IP地址组列表。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 查询IP地址组列表。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2024,7 +2066,7 @@ public SyncInvoker ListIpGroupsInvoker(ListIpGroupsRequest /// /// 查询IP地址组详情 /// - /// 获取IP地址组详情。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// 获取IP地址组详情。[荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -2055,7 +2097,7 @@ public SyncInvoker ShowIpGroupInvoker(ShowIpGroupRequest sh /// /// 需要注意0.0.0.0与0.0.0.0/32视为重复,0:0:0:0:0:0:0:1与::1与::1/128视为重复,只会保存其中一个。 /// - /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt) + /// [荷兰region不支持IP地址组功能,请勿使用。](tag:dt,dt_test) /// /// Please refer to HUAWEI cloud API Explorer for details. /// diff --git a/Services/Elb/V3/Model/AutoscalingRef.cs b/Services/Elb/V3/Model/AutoscalingRef.cs index e36e8d119..624f8783f 100644 --- a/Services/Elb/V3/Model/AutoscalingRef.cs +++ b/Services/Elb/V3/Model/AutoscalingRef.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 弹性扩缩容配置信息。负载均衡器配置并开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 使用说明: - 仅当租户白名单放开后该字段才有效 - 开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该LB实例弹性规格的上限。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) + /// 弹性扩缩容配置信息。负载均衡器配置并开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 使用说明: - 仅当项目白名单放开后该字段才有效 - 开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该LB实例弹性规格的上限。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) /// public class AutoscalingRef { diff --git a/Services/Elb/V3/Model/AvailabilityZone.cs b/Services/Elb/V3/Model/AvailabilityZone.cs index aa18671b3..3a5f8ca12 100644 --- a/Services/Elb/V3/Model/AvailabilityZone.cs +++ b/Services/Elb/V3/Model/AvailabilityZone.cs @@ -29,7 +29,7 @@ public class AvailabilityZone public string State { get; set; } /// - /// [未售罄的LB规格类别。 取值:L4 表示网络型LB未售罄;L7 表示应用型LB未售罄。](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,fcs,fcs_dt,dt) [LB规格类别。取值:L4 表示网络型LB;L7 表示应用型LB。](tag:ocb,tm) + /// [未售罄的LB规格类别。 取值:L4 表示网络型LB未售罄;L7 表示应用型LB未售罄。](tag:hws,hk,hws_eu,otc,tlf,ctc,sbc,g42,cmcc,hk_g42,dt_test,mix,hk_sbc,hws_ocb,dt) [LB规格类别。取值:L4 表示网络型LB;L7 表示应用型LB。](tag:ocb,tm,fcs,fcs_dt,hcso,hcso_dt,hk_vdf) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public List Protocol { get; set; } diff --git a/Services/Elb/V3/Model/BatchAddAvailableZonesResponse.cs b/Services/Elb/V3/Model/BatchAddAvailableZonesResponse.cs index 927c33bd6..883ae1006 100644 --- a/Services/Elb/V3/Model/BatchAddAvailableZonesResponse.cs +++ b/Services/Elb/V3/Model/BatchAddAvailableZonesResponse.cs @@ -29,13 +29,13 @@ public class BatchAddAvailableZonesResponse : SdkResponse public string RequestId { get; set; } /// - /// 负载均衡器ID[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 负载均衡器ID[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] public string LoadbalancerId { get; set; } /// - /// 订单号[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 订单号[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("order_id", NullValueHandling = NullValueHandling.Ignore)] public string OrderId { get; set; } diff --git a/Services/Elb/V3/Model/BatchCreateMembersOption.cs b/Services/Elb/V3/Model/BatchCreateMembersOption.cs index a474aa84f..f12deb05b 100644 --- a/Services/Elb/V3/Model/BatchCreateMembersOption.cs +++ b/Services/Elb/V3/Model/BatchCreateMembersOption.cs @@ -35,7 +35,7 @@ public class BatchCreateMembersOption public int? ProtocolPort { get; set; } /// - /// 后端云服务器所在的子网ID。该子网和后端云服务器关联的负载均衡器的子网必须在同一VPC下。 当所在LB未开启跨VPC后端,该参数必填。 当所在LB开启跨VPC后端,该参数非必填,表示添加跨VPC后端,此时address必须为ipv4地址, pool的协议必须为TCP/HTTP/HTTPS,pool所属的LB的跨VPC后端转发能力必须打开。 + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发已开启(ip_target_enable=true),则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 - 若所属LB未开启跨VPC后端转发,该参数必填。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) /// [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string SubnetCidrId { get; set; } diff --git a/Services/Elb/V3/Model/BatchDeleteIpListOption.cs b/Services/Elb/V3/Model/BatchDeleteIpListOption.cs index fcd96f7e0..2ba3ad485 100644 --- a/Services/Elb/V3/Model/BatchDeleteIpListOption.cs +++ b/Services/Elb/V3/Model/BatchDeleteIpListOption.cs @@ -17,7 +17,7 @@ public class BatchDeleteIpListOption { /// - /// IP列表。 + /// 参数解释:IP列表。 /// [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } diff --git a/Services/Elb/V3/Model/BatchDeleteIpListRequest.cs b/Services/Elb/V3/Model/BatchDeleteIpListRequest.cs index 9403eec60..48be4c282 100644 --- a/Services/Elb/V3/Model/BatchDeleteIpListRequest.cs +++ b/Services/Elb/V3/Model/BatchDeleteIpListRequest.cs @@ -17,7 +17,7 @@ public class BatchDeleteIpListRequest { /// - /// IP地址组ID。 + /// 参数解释:IP地址组ID。 /// [SDKProperty("ipgroup_id", IsPath = true)] [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/BatchDeleteIpListResponse.cs b/Services/Elb/V3/Model/BatchDeleteIpListResponse.cs index 099db7989..f4d3f4291 100644 --- a/Services/Elb/V3/Model/BatchDeleteIpListResponse.cs +++ b/Services/Elb/V3/Model/BatchDeleteIpListResponse.cs @@ -23,7 +23,7 @@ public class BatchDeleteIpListResponse : SdkResponse public IpGroup Ipgroup { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/BatchMember.cs b/Services/Elb/V3/Model/BatchMember.cs index 37374b02c..ef5096d28 100644 --- a/Services/Elb/V3/Model/BatchMember.cs +++ b/Services/Elb/V3/Model/BatchMember.cs @@ -41,7 +41,7 @@ public class BatchMember public bool? AdminStateUp { get; set; } /// - /// 后端云服务器所在子网的IPv4子网ID或IPv6子网ID。 若所属的LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发已开启(ip_target_enable=true),则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 - 若所属LB未开启跨VPC后端转发,该参数必填。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) /// [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string SubnetCidrId { get; set; } @@ -59,7 +59,7 @@ public class BatchMember public int? Weight { get; set; } /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } @@ -100,6 +100,18 @@ public class BatchMember [JsonProperty("ret_status", NullValueHandling = NullValueHandling.Ignore)] public string RetStatus { get; set; } + /// + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreatedAt { get; set; } + + /// + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdatedAt { get; set; } + /// @@ -123,6 +135,8 @@ public override string ToString() sb.Append(" instanceId: ").Append(InstanceId).Append("\n"); sb.Append(" portId: ").Append(PortId).Append("\n"); sb.Append(" retStatus: ").Append(RetStatus).Append("\n"); + sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); + sb.Append(" updatedAt: ").Append(UpdatedAt).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -214,6 +228,16 @@ public bool Equals(BatchMember input) this.RetStatus == input.RetStatus || (this.RetStatus != null && this.RetStatus.Equals(input.RetStatus)) + ) && + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && + ( + this.UpdatedAt == input.UpdatedAt || + (this.UpdatedAt != null && + this.UpdatedAt.Equals(input.UpdatedAt)) ); } @@ -253,6 +277,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.PortId.GetHashCode(); if (this.RetStatus != null) hashCode = hashCode * 59 + this.RetStatus.GetHashCode(); + if (this.CreatedAt != null) + hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); + if (this.UpdatedAt != null) + hashCode = hashCode * 59 + this.UpdatedAt.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/BatchUpdateMember.cs b/Services/Elb/V3/Model/BatchUpdateMember.cs index 8fd94823e..4764c7265 100644 --- a/Services/Elb/V3/Model/BatchUpdateMember.cs +++ b/Services/Elb/V3/Model/BatchUpdateMember.cs @@ -41,7 +41,7 @@ public class BatchUpdateMember public bool? AdminStateUp { get; set; } /// - /// 后端云服务器所在子网的IPv4子网ID或IPv6子网ID。 若所属的LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发已开启(ip_target_enable=true),则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 - 若所属LB未开启跨VPC后端转发,该参数必填。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) /// [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string SubnetCidrId { get; set; } @@ -59,7 +59,7 @@ public class BatchUpdateMember public int? Weight { get; set; } /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } @@ -94,6 +94,18 @@ public class BatchUpdateMember [JsonProperty("port_id", NullValueHandling = NullValueHandling.Ignore)] public string PortId { get; set; } + /// + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreatedAt { get; set; } + + /// + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdatedAt { get; set; } + /// @@ -116,6 +128,8 @@ public override string ToString() sb.Append(" memberType: ").Append(MemberType).Append("\n"); sb.Append(" instanceId: ").Append(InstanceId).Append("\n"); sb.Append(" portId: ").Append(PortId).Append("\n"); + sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); + sb.Append(" updatedAt: ").Append(UpdatedAt).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -202,6 +216,16 @@ public bool Equals(BatchUpdateMember input) this.PortId == input.PortId || (this.PortId != null && this.PortId.Equals(input.PortId)) + ) && + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && + ( + this.UpdatedAt == input.UpdatedAt || + (this.UpdatedAt != null && + this.UpdatedAt.Equals(input.UpdatedAt)) ); } @@ -239,6 +263,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.InstanceId.GetHashCode(); if (this.PortId != null) hashCode = hashCode * 59 + this.PortId.GetHashCode(); + if (this.CreatedAt != null) + hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); + if (this.UpdatedAt != null) + hashCode = hashCode * 59 + this.UpdatedAt.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/BatchUpdatePriorityRequestBody.cs b/Services/Elb/V3/Model/BatchUpdatePriorityRequestBody.cs index 1c568abd0..c3f8bfc15 100644 --- a/Services/Elb/V3/Model/BatchUpdatePriorityRequestBody.cs +++ b/Services/Elb/V3/Model/BatchUpdatePriorityRequestBody.cs @@ -23,7 +23,7 @@ public class BatchUpdatePriorityRequestBody public string Id { get; set; } /// - /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 参数解释: 转发策略的优先级。数字越小表示优先级越高。各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 若关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 约束限制: - 同一个监听器下不允许重复的优先级数值。 - 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 - 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 - 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 [- 共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) 取值范围:1-10000 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("priority", NullValueHandling = NullValueHandling.Ignore)] public int? Priority { get; set; } diff --git a/Services/Elb/V3/Model/CertificateInfo.cs b/Services/Elb/V3/Model/CertificateInfo.cs index ca89e6f21..f325cc40d 100644 --- a/Services/Elb/V3/Model/CertificateInfo.cs +++ b/Services/Elb/V3/Model/CertificateInfo.cs @@ -35,7 +35,7 @@ public class CertificateInfo public string Description { get; set; } /// - /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com。 泛域名:在普通域名的基础上仅允许首字母为\"*\"。例:*.test.com + /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com。 泛域名:在普通域名的基础上仅允许首字母为\"\\*\"。例:\\*.test.com /// [JsonProperty("domain", NullValueHandling = NullValueHandling.Ignore)] public string Domain { get; set; } @@ -100,6 +100,24 @@ public class CertificateInfo [JsonProperty("enc_private_key", NullValueHandling = NullValueHandling.Ignore)] public string EncPrivateKey { get; set; } + /// + /// 证书主域名 + /// + [JsonProperty("common_name", NullValueHandling = NullValueHandling.Ignore)] + public string CommonName { get; set; } + + /// + /// 证书指纹 + /// + [JsonProperty("fingerprint", NullValueHandling = NullValueHandling.Ignore)] + public string Fingerprint { get; set; } + + /// + /// 证书全部域名 + /// + [JsonProperty("subject_alternative_names", NullValueHandling = NullValueHandling.Ignore)] + public List SubjectAlternativeNames { get; set; } + /// @@ -123,6 +141,9 @@ public override string ToString() sb.Append(" projectId: ").Append(ProjectId).Append("\n"); sb.Append(" encCertificate: ").Append(EncCertificate).Append("\n"); sb.Append(" encPrivateKey: ").Append(EncPrivateKey).Append("\n"); + sb.Append(" commonName: ").Append(CommonName).Append("\n"); + sb.Append(" fingerprint: ").Append(Fingerprint).Append("\n"); + sb.Append(" subjectAlternativeNames: ").Append(SubjectAlternativeNames).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -213,6 +234,22 @@ public bool Equals(CertificateInfo input) this.EncPrivateKey == input.EncPrivateKey || (this.EncPrivateKey != null && this.EncPrivateKey.Equals(input.EncPrivateKey)) + ) && + ( + this.CommonName == input.CommonName || + (this.CommonName != null && + this.CommonName.Equals(input.CommonName)) + ) && + ( + this.Fingerprint == input.Fingerprint || + (this.Fingerprint != null && + this.Fingerprint.Equals(input.Fingerprint)) + ) && + ( + this.SubjectAlternativeNames == input.SubjectAlternativeNames || + this.SubjectAlternativeNames != null && + input.SubjectAlternativeNames != null && + this.SubjectAlternativeNames.SequenceEqual(input.SubjectAlternativeNames) ); } @@ -252,6 +289,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.EncCertificate.GetHashCode(); if (this.EncPrivateKey != null) hashCode = hashCode * 59 + this.EncPrivateKey.GetHashCode(); + if (this.CommonName != null) + hashCode = hashCode * 59 + this.CommonName.GetHashCode(); + if (this.Fingerprint != null) + hashCode = hashCode * 59 + this.Fingerprint.GetHashCode(); + if (this.SubjectAlternativeNames != null) + hashCode = hashCode * 59 + this.SubjectAlternativeNames.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/ChangeLoadbalancerChargeModeRequestBody.cs b/Services/Elb/V3/Model/ChangeLoadbalancerChargeModeRequestBody.cs index 89033dce7..89b7d27fa 100644 --- a/Services/Elb/V3/Model/ChangeLoadbalancerChargeModeRequestBody.cs +++ b/Services/Elb/V3/Model/ChangeLoadbalancerChargeModeRequestBody.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class ChangeLoadbalancerChargeModeRequestBody { /// - /// 计费模式。取值: - prepaid:包周期计费(仅当不传pay_type时,允许设为该值) + /// 计费模式。取值: - prepaid:包周期计费[(仅当不传pay_type时,允许设为该值)](tag:test) /// - /// 计费模式。取值: - prepaid:包周期计费(仅当不传pay_type时,允许设为该值) + /// 计费模式。取值: - prepaid:包周期计费[(仅当不传pay_type时,允许设为该值)](tag:test) [JsonConverter(typeof(EnumClassConverter))] public class ChargeModeEnum { @@ -132,7 +132,7 @@ public bool Equals(ChargeModeEnum obj) public List LoadbalancerIds { get; set; } /// - /// 计费模式。取值: - prepaid:包周期计费(仅当不传pay_type时,允许设为该值) + /// 计费模式。取值: - prepaid:包周期计费[(仅当不传pay_type时,允许设为该值)](tag:test) /// [JsonProperty("charge_mode", NullValueHandling = NullValueHandling.Ignore)] public ChargeModeEnum ChargeMode { get; set; } diff --git a/Services/Elb/V3/Model/ConnectionDrain.cs b/Services/Elb/V3/Model/ConnectionDrain.cs index a289a2003..09948458f 100644 --- a/Services/Elb/V3/Model/ConnectionDrain.cs +++ b/Services/Elb/V3/Model/ConnectionDrain.cs @@ -11,13 +11,13 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// + /// 后端服务器的延迟注销的功能配置(只针对TCP、UDP、QUIC协议类型的后端服务器组和TCP、UDP协议类的监听器) 以下场景会触发: - 服务器从后端服务器组中移除 - 后端云服务健康检查状态异常 - 后端云服务器权重修改为0 /// public class ConnectionDrain { /// - /// 延迟注销功能开关,默认值:false; true:开启; false:关闭 + /// 延迟注销功能开关。取值:true 开启,false 关闭,默认true。 /// [JsonProperty("enable", NullValueHandling = NullValueHandling.Ignore)] public bool? Enable { get; set; } diff --git a/Services/Elb/V3/Model/CountPreoccupyIpNumRequest.cs b/Services/Elb/V3/Model/CountPreoccupyIpNumRequest.cs index 60a1515a9..da8ed93bb 100644 --- a/Services/Elb/V3/Model/CountPreoccupyIpNumRequest.cs +++ b/Services/Elb/V3/Model/CountPreoccupyIpNumRequest.cs @@ -17,14 +17,14 @@ public class CountPreoccupyIpNumRequest { /// - /// 负载均衡器七层规格的ID。传入该字段表示计算创建该规格的LB,或变更LB的原七层规格到该规格所需要的预占IP。 适用场景:创建负LB,变更LB规格。 [不支持传入l7_flavor_id](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 负载均衡器七层规格的ID。传入该字段表示计算创建该规格的LB,或变更LB的原七层规格到该规格所需要的预占IP。 适用场景:创建负LB,变更LB规格。 [不支持传入l7_flavor_id](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [SDKProperty("l7_flavor_id", IsQuery = true)] [JsonProperty("l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L7FlavorId { get; set; } /// - /// 是否开启跨VPC转发。 取值true表示计算创建或变更为开启跨VPC转发的LB的预占IP。 取值false表示计算创建或变更为不开启跨VPC转发的LB的预占IP。不传等价false。 适用场景:创建LB,变更LB规格。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启跨VPC转发。 取值true表示计算创建或变更为开启跨VPC转发的LB的预占IP。 取值false表示计算创建或变更为不开启跨VPC转发的LB的预占IP。不传等价false。 适用场景:创建LB,变更LB规格。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [SDKProperty("ip_target_enable", IsQuery = true)] [JsonProperty("ip_target_enable", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/CreateCertificateOption.cs b/Services/Elb/V3/Model/CreateCertificateOption.cs index 57471c951..40a3ce12b 100644 --- a/Services/Elb/V3/Model/CreateCertificateOption.cs +++ b/Services/Elb/V3/Model/CreateCertificateOption.cs @@ -150,7 +150,7 @@ public bool Equals(TypeEnum obj) public string Description { get; set; } /// - /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com; 泛域名:在普通域名的基础上仅允许首字母为\"\"。例:.test.com + /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com; 泛域名:在普通域名的基础上仅允许首字母为\"\\*\"。例:\\*.test.com /// [JsonProperty("domain", NullValueHandling = NullValueHandling.Ignore)] public string Domain { get; set; } diff --git a/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequest.cs b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequest.cs new file mode 100644 index 000000000..23b40ed0f --- /dev/null +++ b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// Request Object + /// + public class CreateCertificatePrivateKeyEchoRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public CreateCertificatePrivateKeyEchoRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateCertificatePrivateKeyEchoRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateCertificatePrivateKeyEchoRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateCertificatePrivateKeyEchoRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequestBody.cs b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequestBody.cs new file mode 100644 index 000000000..0b6710ff9 --- /dev/null +++ b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoRequestBody.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// This is a auto create Body Object + /// + public class CreateCertificatePrivateKeyEchoRequestBody + { + + /// + /// 证书回显开关,项目粒度的,默认情况下,\"private_key_echo\"是true,证书的返回体中展示私钥。 当值为false时,证书的返回体中不展示私钥。 + /// + [JsonProperty("private_key_echo", NullValueHandling = NullValueHandling.Ignore)] + public bool? PrivateKeyEcho { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateCertificatePrivateKeyEchoRequestBody {\n"); + sb.Append(" privateKeyEcho: ").Append(PrivateKeyEcho).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateCertificatePrivateKeyEchoRequestBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateCertificatePrivateKeyEchoRequestBody input) + { + if (input == null) + return false; + + return + ( + this.PrivateKeyEcho == input.PrivateKeyEcho || + (this.PrivateKeyEcho != null && + this.PrivateKeyEcho.Equals(input.PrivateKeyEcho)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PrivateKeyEcho != null) + hashCode = hashCode * 59 + this.PrivateKeyEcho.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoResponse.cs b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoResponse.cs new file mode 100644 index 000000000..e226399fc --- /dev/null +++ b/Services/Elb/V3/Model/CreateCertificatePrivateKeyEchoResponse.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// Response Object + /// + public class CreateCertificatePrivateKeyEchoResponse : SdkResponse + { + + /// + /// 请求ID。 注:自动生成 。 + /// + [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] + public string RequestId { get; set; } + + /// + /// 证书回显开关,项目粒度的,默认情况下,\"private_key_echo\"是true,证书的返回体中展示私钥。 当值为false时,证书的返回体中不展示私钥。 + /// + [JsonProperty("private_key_echo", NullValueHandling = NullValueHandling.Ignore)] + public bool? PrivateKeyEcho { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateCertificatePrivateKeyEchoResponse {\n"); + sb.Append(" requestId: ").Append(RequestId).Append("\n"); + sb.Append(" privateKeyEcho: ").Append(PrivateKeyEcho).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateCertificatePrivateKeyEchoResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateCertificatePrivateKeyEchoResponse input) + { + if (input == null) + return false; + + return + ( + this.RequestId == input.RequestId || + (this.RequestId != null && + this.RequestId.Equals(input.RequestId)) + ) && + ( + this.PrivateKeyEcho == input.PrivateKeyEcho || + (this.PrivateKeyEcho != null && + this.PrivateKeyEcho.Equals(input.PrivateKeyEcho)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.RequestId != null) + hashCode = hashCode * 59 + this.RequestId.GetHashCode(); + if (this.PrivateKeyEcho != null) + hashCode = hashCode * 59 + this.PrivateKeyEcho.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateFixtedResponseConfig.cs b/Services/Elb/V3/Model/CreateFixtedResponseConfig.cs index 2adb3e3a5..2ffbb091a 100644 --- a/Services/Elb/V3/Model/CreateFixtedResponseConfig.cs +++ b/Services/Elb/V3/Model/CreateFixtedResponseConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class CreateFixtedResponseConfig { @@ -166,6 +166,24 @@ public bool Equals(ContentTypeEnum obj) [JsonProperty("message_body", NullValueHandling = NullValueHandling.Ignore)] public string MessageBody { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateTrafficLimitConfig TrafficLimitConfig { get; set; } + /// @@ -178,6 +196,9 @@ public override string ToString() sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); sb.Append(" contentType: ").Append(ContentType).Append("\n"); sb.Append(" messageBody: ").Append(MessageBody).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -213,6 +234,21 @@ public bool Equals(CreateFixtedResponseConfig input) this.MessageBody == input.MessageBody || (this.MessageBody != null && this.MessageBody.Equals(input.MessageBody)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -230,6 +266,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.ContentType.GetHashCode(); if (this.MessageBody != null) hashCode = hashCode * 59 + this.MessageBody.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/CreateHealthMonitorOption.cs b/Services/Elb/V3/Model/CreateHealthMonitorOption.cs index 81e38ba9b..3f9997a73 100644 --- a/Services/Elb/V3/Model/CreateHealthMonitorOption.cs +++ b/Services/Elb/V3/Model/CreateHealthMonitorOption.cs @@ -35,13 +35,13 @@ public class CreateHealthMonitorOption public string DomainName { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:若健康检查type为gRPC,则默认值为0,;其他为200。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 /// [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] public string ExpectedCodes { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] public string HttpMethod { get; set; } @@ -89,7 +89,7 @@ public class CreateHealthMonitorOption public int? Timeout { get; set; } /// - /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS、GRPC和TLS。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为GRPC,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为TLS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } diff --git a/Services/Elb/V3/Model/CreateInsertHeaderConfig.cs b/Services/Elb/V3/Model/CreateInsertHeaderConfig.cs new file mode 100644 index 000000000..05cd09592 --- /dev/null +++ b/Services/Elb/V3/Model/CreateInsertHeaderConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加请求头参数。 + /// + public class CreateInsertHeaderConfig + { + + /// + /// 支持1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 key不能是以下字符: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out。 + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + /// + /// 可选值:USER_DEFINED,REFERENCE_HEADER,SYSTEM_DEFINED。 + /// + [JsonProperty("value_type", NullValueHandling = NullValueHandling.Ignore)] + public string ValueType { get; set; } + + /// + /// header值。当value_type为SYSTEM_DEFINED时,value只可从CLIENT-PORT,CLIENT-IP, ELB-PROTOCOL, ELB-ID, ELB-PORT, ELB-EIP, ELB-VIP中取值。 取值范围:1-128个字符, 支持ascii码值32<=ch<=127范围内可打印字符,*和英文问号?。不能以空格开头或结尾。 + /// + [JsonProperty("value", NullValueHandling = NullValueHandling.Ignore)] + public string Value { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateInsertHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append(" valueType: ").Append(ValueType).Append("\n"); + sb.Append(" value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateInsertHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateInsertHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ) && + ( + this.ValueType == input.ValueType || + (this.ValueType != null && + this.ValueType.Equals(input.ValueType)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + if (this.ValueType != null) + hashCode = hashCode * 59 + this.ValueType.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateInsertHeadersConfig.cs b/Services/Elb/V3/Model/CreateInsertHeadersConfig.cs new file mode 100644 index 000000000..28b376ced --- /dev/null +++ b/Services/Elb/V3/Model/CreateInsertHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加的请求头参数列表。 + /// + public class CreateInsertHeadersConfig + { + + /// + /// 要添加请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateInsertHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateInsertHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateInsertHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateIpGroupIpOption.cs b/Services/Elb/V3/Model/CreateIpGroupIpOption.cs index a86a2879c..419f799b0 100644 --- a/Services/Elb/V3/Model/CreateIpGroupIpOption.cs +++ b/Services/Elb/V3/Model/CreateIpGroupIpOption.cs @@ -11,19 +11,19 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// IP地址组中的包含的IP信息。 + /// 参数解释:IP地址组中的包含的IP信息。 /// public class CreateIpGroupIpOption { /// - /// IP地址。支持IPv4、IPv6。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 参数解释:IP地址。支持IPv4、IPv6。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("ip", NullValueHandling = NullValueHandling.Ignore)] public string Ip { get; set; } /// - /// 备注信息。 + /// 参数解释:备注信息。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } diff --git a/Services/Elb/V3/Model/CreateIpGroupOption.cs b/Services/Elb/V3/Model/CreateIpGroupOption.cs index 9dd135c28..b30cbacf2 100644 --- a/Services/Elb/V3/Model/CreateIpGroupOption.cs +++ b/Services/Elb/V3/Model/CreateIpGroupOption.cs @@ -17,31 +17,31 @@ public class CreateIpGroupOption { /// - /// IP地址组所在的项目ID。 + /// 参数解释:IP地址组所在的项目ID。 /// [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] public string ProjectId { get; set; } /// - /// IP地址组的描述。 + /// 参数解释:IP地址组的描述。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } /// - /// IP地址组的名称。 + /// 参数解释:IP地址组的名称。 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// IP地址组中包含的IP或网段列表。[]表示任意IP。 + /// 参数解释:IP地址组中包含的IP或网段列表。[]表示任意IP。 /// [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } /// - /// IP地址组所在的企业项目ID。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) + /// 参数解释:IP地址组所在的企业项目ID。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] public string EnterpriseProjectId { get; set; } diff --git a/Services/Elb/V3/Model/CreateIpGroupResponse.cs b/Services/Elb/V3/Model/CreateIpGroupResponse.cs index f61292d78..5670dd72c 100644 --- a/Services/Elb/V3/Model/CreateIpGroupResponse.cs +++ b/Services/Elb/V3/Model/CreateIpGroupResponse.cs @@ -23,7 +23,7 @@ public class CreateIpGroupResponse : SdkResponse public IpGroup Ipgroup { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/CreateL7PolicyOption.cs b/Services/Elb/V3/Model/CreateL7PolicyOption.cs index 86a20c5ce..d05330aa4 100644 --- a/Services/Elb/V3/Model/CreateL7PolicyOption.cs +++ b/Services/Elb/V3/Model/CreateL7PolicyOption.cs @@ -53,7 +53,7 @@ public class CreateL7PolicyOption public int? Position { get; set; } /// - /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("priority", NullValueHandling = NullValueHandling.Ignore)] public int? Priority { get; set; } @@ -65,7 +65,7 @@ public class CreateL7PolicyOption public string ProjectId { get; set; } /// - /// 转发到的listener的ID,当action为REDIRECT_TO_LISTENER时必选。 使用说明: - 只支持protocol为HTTPS/TERMINATED_HTTPS的listener。 - 不能指定为其他loadbalancer下的listener。 - 当action为REDIRECT_TO_POOL时,创建或更新时不能传入该参数。 [- 共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 转发到的listener的ID,当action为REDIRECT_TO_LISTENER时必选。 使用说明: - 只支持protocol为HTTPS/TERMINATED_HTTPS的listener。 - 不能指定为其他loadbalancer下的listener。 - 当action为REDIRECT_TO_POOL时,创建或更新时不能传入该参数。 [- 共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("redirect_listener_id", NullValueHandling = NullValueHandling.Ignore)] public string RedirectListenerId { get; set; } @@ -88,6 +88,18 @@ public class CreateL7PolicyOption [JsonProperty("redirect_url_config", NullValueHandling = NullValueHandling.Ignore)] public CreateRedirectUrlConfig RedirectUrlConfig { get; set; } + /// + /// 转发到多个主机组列表。一个policy最多配置5个pool。 + /// + [JsonProperty("redirect_pools_config", NullValueHandling = NullValueHandling.Ignore)] + public List RedirectPoolsConfig { get; set; } + + /// + /// + /// + [JsonProperty("redirect_pools_sticky_session_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateRedirectPoolsStickySessionConfig RedirectPoolsStickySessionConfig { get; set; } + /// /// /// @@ -127,6 +139,8 @@ public override string ToString() sb.Append(" redirectPoolId: ").Append(RedirectPoolId).Append("\n"); sb.Append(" redirectUrl: ").Append(RedirectUrl).Append("\n"); sb.Append(" redirectUrlConfig: ").Append(RedirectUrlConfig).Append("\n"); + sb.Append(" redirectPoolsConfig: ").Append(RedirectPoolsConfig).Append("\n"); + sb.Append(" redirectPoolsStickySessionConfig: ").Append(RedirectPoolsStickySessionConfig).Append("\n"); sb.Append(" fixedResponseConfig: ").Append(FixedResponseConfig).Append("\n"); sb.Append(" redirectPoolsExtendConfig: ").Append(RedirectPoolsExtendConfig).Append("\n"); sb.Append(" rules: ").Append(Rules).Append("\n"); @@ -211,6 +225,17 @@ public bool Equals(CreateL7PolicyOption input) (this.RedirectUrlConfig != null && this.RedirectUrlConfig.Equals(input.RedirectUrlConfig)) ) && + ( + this.RedirectPoolsConfig == input.RedirectPoolsConfig || + this.RedirectPoolsConfig != null && + input.RedirectPoolsConfig != null && + this.RedirectPoolsConfig.SequenceEqual(input.RedirectPoolsConfig) + ) && + ( + this.RedirectPoolsStickySessionConfig == input.RedirectPoolsStickySessionConfig || + (this.RedirectPoolsStickySessionConfig != null && + this.RedirectPoolsStickySessionConfig.Equals(input.RedirectPoolsStickySessionConfig)) + ) && ( this.FixedResponseConfig == input.FixedResponseConfig || (this.FixedResponseConfig != null && @@ -261,6 +286,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.RedirectUrl.GetHashCode(); if (this.RedirectUrlConfig != null) hashCode = hashCode * 59 + this.RedirectUrlConfig.GetHashCode(); + if (this.RedirectPoolsConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsConfig.GetHashCode(); + if (this.RedirectPoolsStickySessionConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsStickySessionConfig.GetHashCode(); if (this.FixedResponseConfig != null) hashCode = hashCode * 59 + this.FixedResponseConfig.GetHashCode(); if (this.RedirectPoolsExtendConfig != null) diff --git a/Services/Elb/V3/Model/CreateL7PolicyRuleOption.cs b/Services/Elb/V3/Model/CreateL7PolicyRuleOption.cs index 2404f0fc3..c1a1ba57d 100644 --- a/Services/Elb/V3/Model/CreateL7PolicyRuleOption.cs +++ b/Services/Elb/V3/Model/CreateL7PolicyRuleOption.cs @@ -23,7 +23,7 @@ public class CreateL7PolicyRuleOption public bool? AdminStateUp { get; set; } /// - /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) + /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 - COOKIE: 匹配cookie信息。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } @@ -53,7 +53,7 @@ public class CreateL7PolicyRuleOption public string Value { get; set; } /// - /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("conditions", NullValueHandling = NullValueHandling.Ignore)] public List Conditions { get; set; } diff --git a/Services/Elb/V3/Model/CreateListenerIpGroupOption.cs b/Services/Elb/V3/Model/CreateListenerIpGroupOption.cs index 7ad0b7027..e680b3058 100644 --- a/Services/Elb/V3/Model/CreateListenerIpGroupOption.cs +++ b/Services/Elb/V3/Model/CreateListenerIpGroupOption.cs @@ -132,7 +132,7 @@ public bool Equals(TypeEnum obj) /// - /// 监听器关联的访问控制组的id。 当关联的ipgroup中的ip_list为[],且类型为白名单时,表示禁止所有ip的访问。 当关联的ipgroup中的ip_list为[],且类型为黑名单时,表示允许所有ip的访问。 + /// 监听器关联的访问控制组的id。 当关联的ipgroup中的ip_list为[],且类型为白名单时,表示禁止所有ip的访问。 当关联的ipgroup中的ip_list为[],且类型为黑名单时,表示允许所有ip的访问。 /// [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] public string IpgroupId { get; set; } diff --git a/Services/Elb/V3/Model/CreateListenerOption.cs b/Services/Elb/V3/Model/CreateListenerOption.cs index a7877660a..1112ea281 100644 --- a/Services/Elb/V3/Model/CreateListenerOption.cs +++ b/Services/Elb/V3/Model/CreateListenerOption.cs @@ -132,7 +132,7 @@ public bool Equals(ProtectionStatusEnum obj) /// - /// 监听器的管理状态。固定为true。 不支持该字段,请勿使用。 + /// 监听器的管理状态。只支持设置为true。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -150,7 +150,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ClientCaTlsContainerRef { get; set; } /// - /// 监听器使用的服务器证书ID。 使用说明:当监听器协议为HTTPS时,该字段必传,且对应的证书的type必须是server类型。 + /// 监听器使用的服务器证书ID。 使用说明:当监听器协议为HTTPS、TLS或QUIC时,该字段必传,且对应的证书的type必须是server类型。 /// [JsonProperty("default_tls_container_ref", NullValueHandling = NullValueHandling.Ignore)] public string DefaultTlsContainerRef { get; set; } @@ -192,7 +192,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProjectId { get; set; } /// - /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC、TCPSSL。 使用说明: - 共享型LB上的HTTPS监听器只支持设置为TERMINATED_HTTPS。 传入HTTPS将会自动转为TERMINATED_HTTPS。 - 独享型LB上的HTTPS监听器只支持设置为HTTPS,传入TERMINATED_HTTPS将会自动转为HTTPS。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [取值:TCP、UDP、HTTP、HTTPS。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) required: false + /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC、TLS。 使用说明: - 共享型LB上的HTTPS监听器只支持设置为TERMINATED_HTTPS。 传入HTTPS将会自动转为TERMINATED_HTTPS。 - 独享型LB上的HTTPS监听器只支持设置为HTTPS,传入TERMINATED_HTTPS将会自动转为HTTPS。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [取值:TCP、UDP、IP、HTTP、HTTPS。IP为网关型LB上的监听器独有的协议。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -222,7 +222,7 @@ public bool Equals(ProtectionStatusEnum obj) public List Tags { get; set; } /// - /// 监听器使用的安全策略。 [取值:tls-1-0-inherit,tls-1-0, tls-1-1, tls-1-2,tls-1-2-strict,tls-1-2-fs,tls-1-0-with-1-3, tls-1-2-fs-with-1-3, hybrid-policy-1-0,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0, tls-1-1, tls-1-2, tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,g42,hk_g42,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,dt,dt_test) + /// 监听器使用的安全策略。 [取值:tls-1-0-inherit、tls-1-0、tls-1-1、 tls-1-2、tls-1-2-strict、tls-1-2-fs、tls-1-0-with-1-3、 tls-1-2-fs-with-1-3、 hybrid-policy-1-0、tls-1-2-strict-no-cbc,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0、tls-1-1、tls-1-2、 tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,g42,hk_g42,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,dt,dt_test) /// [JsonProperty("tls_ciphers_policy", NullValueHandling = NullValueHandling.Ignore)] public string TlsCiphersPolicy { get; set; } @@ -234,13 +234,13 @@ public bool Equals(ProtectionStatusEnum obj) public string SecurityPolicyId { get; set; } /// - /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) + /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) /// [JsonProperty("enable_member_retry", NullValueHandling = NullValueHandling.Ignore)] public bool? EnableMemberRetry { get; set; } /// - /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - 若为TCP监听器,取值范围为(10-4000s)默认值为300s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 + /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - TCP监听器[和IP监听器](tag:hws_eu):10-4000s,默认值为300s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 /// [JsonProperty("keepalive_timeout", NullValueHandling = NullValueHandling.Ignore)] public int? KeepaliveTimeout { get; set; } @@ -264,19 +264,19 @@ public bool Equals(ProtectionStatusEnum obj) public CreateListenerIpGroupOption Ipgroup { get; set; } /// - /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) + /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) /// [JsonProperty("transparent_client_ip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? TransparentClientIpEnable { get; set; } /// - /// 是否开启proxy_protocol。仅tcpssl监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 + /// 是否开启proxy_protocol。仅TLS监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 /// [JsonProperty("proxy_protocol_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? ProxyProtocolEnable { get; set; } /// - /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启,默认false。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt) > 开启后不支持关闭 + /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启,默认false。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) > 开启后不支持关闭 /// [JsonProperty("enhance_l7policy_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? EnhanceL7policyEnable { get; set; } @@ -299,13 +299,13 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) + /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) /// [JsonProperty("gzip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? GzipEnable { get; set; } /// - /// 端口监听范围(闭区间),最多指定10个端口组,每个组范围不可有重叠部分 >仅当protocol_port为0或未传入protoco_port时可以传入该字段。仅TCP, UDP,TCPSSL监听支持该字段 + /// 端口监听范围(闭区间),最多指定10个端口组,每个组范围不可有重叠部分 >仅当protocol_port为0或未传入protoco_port时可以传入该字段。仅TCP, UDP,TLS监听支持该字段 /// [JsonProperty("port_ranges", NullValueHandling = NullValueHandling.Ignore)] public List PortRanges { get; set; } diff --git a/Services/Elb/V3/Model/CreateLoadBalancerBandwidthOption.cs b/Services/Elb/V3/Model/CreateLoadBalancerBandwidthOption.cs index 5f1c4652b..dc437b9e0 100644 --- a/Services/Elb/V3/Model/CreateLoadBalancerBandwidthOption.cs +++ b/Services/Elb/V3/Model/CreateLoadBalancerBandwidthOption.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class CreateLoadBalancerBandwidthOption { /// - /// 计费模式。 [取值:bandwidth表示按带宽计费,traffic表示按流量计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,tm,cmcc,hws_ocb,fcs) [当前仅支持traffic按流量计费](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 使用说明:当id字段为null时,charge_mode是必须的。 + /// 参数解释:计费模式。bandwidth 按带宽计费;traffic 按流量计费。 约束限制:当id字段为null时,charge_mode是必须的。 [当前仅支持traffic按流量计费。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 取值范围: - bandwidth:按带宽计费。 - traffic: 按流量计费。 /// - /// 计费模式。 [取值:bandwidth表示按带宽计费,traffic表示按流量计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,tm,cmcc,hws_ocb,fcs) [当前仅支持traffic按流量计费](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 使用说明:当id字段为null时,charge_mode是必须的。 + /// 参数解释:计费模式。bandwidth 按带宽计费;traffic 按流量计费。 约束限制:当id字段为null时,charge_mode是必须的。 [当前仅支持traffic按流量计费。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 取值范围: - bandwidth:按带宽计费。 - traffic: 按流量计费。 [JsonConverter(typeof(EnumClassConverter))] public class ChargeModeEnum { @@ -131,9 +131,9 @@ public bool Equals(ChargeModeEnum obj) } /// - /// 带宽类型。 取值: - PER:独享带宽。 - WHOLE:共享带宽。 使用说明: - 当id字段为null时,share_type是必须的。当id不为null时,该字段被忽略。 - 该字段为WHOLE时,必须指定带宽ID。 - IPv6的EIP不支持WHOLE类型带宽。 + /// 参数解释:带宽类型。 取值范围: - PER:独享带宽。 - WHOLE:共享带宽。 /// - /// 带宽类型。 取值: - PER:独享带宽。 - WHOLE:共享带宽。 使用说明: - 当id字段为null时,share_type是必须的。当id不为null时,该字段被忽略。 - 该字段为WHOLE时,必须指定带宽ID。 - IPv6的EIP不支持WHOLE类型带宽。 + /// 参数解释:带宽类型。 取值范围: - PER:独享带宽。 - WHOLE:共享带宽。 [JsonConverter(typeof(EnumClassConverter))] public class ShareTypeEnum { @@ -247,35 +247,35 @@ public bool Equals(ShareTypeEnum obj) /// - /// 带宽名称。 取值:1-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) 使用说明: - 如果share_type是PER,该字段是必选。 - 如果bandwidth对象的id有值,该字段被忽略。 + /// 参数解释:带宽名称。 约束限制: - 如果share_type是PER,该字段是必选。 - 如果bandwidth对象的id有值,该字段被忽略。 取值范围:1-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// 带宽大小 取值范围:默认1Mbit/s~2000Mbit/s(具体范围以各区域配置为准,请参见控制台对应页面显示)。 注意:调整带宽时的最小单位会根据带宽范围不同存在差异。 小于等于300Mbit/s:默认最小单位为1Mbit/s。 300Mbit/s~1000Mbit/s:默认最小单位为50Mbit/s。 大于1000Mbit/s:默认最小单位为500Mbit/s。 使用说明:当id字段为null时,size是必须的。 + /// 参数解释:带宽大小 约束限制:当id字段为null时,size是必须的。 注意,调整带宽时的最小单位会根据带宽范围不同存在差异。 - 小于等于300Mbit/s: 默认最小单位为1Mbit/s。 - 300Mbit/s~1000Mbit/s: 默认最小单位为50Mbit/s。 - 大于1000Mbit/s: 默认最小单位为500Mbit/s。 取值范围:默认1Mbit/s~2000Mbit/s(具体范围以各区域配置为准,请参见控制台对应页面显示)。 /// [JsonProperty("size", NullValueHandling = NullValueHandling.Ignore)] public int? Size { get; set; } /// - /// 计费模式。 [取值:bandwidth表示按带宽计费,traffic表示按流量计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,tm,cmcc,hws_ocb,fcs) [当前仅支持traffic按流量计费](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 使用说明:当id字段为null时,charge_mode是必须的。 + /// 参数解释:计费模式。bandwidth 按带宽计费;traffic 按流量计费。 约束限制:当id字段为null时,charge_mode是必须的。 [当前仅支持traffic按流量计费。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt) 取值范围: - bandwidth:按带宽计费。 - traffic: 按流量计费。 /// [JsonProperty("charge_mode", NullValueHandling = NullValueHandling.Ignore)] public ChargeModeEnum ChargeMode { get; set; } /// - /// 带宽类型。 取值: - PER:独享带宽。 - WHOLE:共享带宽。 使用说明: - 当id字段为null时,share_type是必须的。当id不为null时,该字段被忽略。 - 该字段为WHOLE时,必须指定带宽ID。 - IPv6的EIP不支持WHOLE类型带宽。 + /// 参数解释:带宽类型。 取值范围: - PER:独享带宽。 - WHOLE:共享带宽。 /// [JsonProperty("share_type", NullValueHandling = NullValueHandling.Ignore)] public ShareTypeEnum ShareType { get; set; } /// - /// 资源账单信息。 [如果billing_info不为空,说明是包周期计费的带宽,否则为按需计费的带宽 ](tag:hws,hws_hk,tlf,ctc,hcso,sbc,cmcc) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,fcs) + /// 参数解释:资源计费信息。 约束限制: [如果billing_info不为空,说明是包周期计费的带宽,否则为按需计费的带宽。](tag:hws,hws_hk,tlf,ctc,hcso,sbc,cmcc) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hk_vdf,fcs) /// [JsonProperty("billing_info", NullValueHandling = NullValueHandling.Ignore)] public string BillingInfo { get; set; } /// - /// 功能说明:使用已有的共享带宽创建IP 取值范围:共享带宽ID 使用说明: WHOLE类型的带宽ID; 在预付费的情况下,不填该值。该字段取空字符串时,会被忽略。 + /// 参数解释:共享带宽ID。使用已存在的共享带宽。 约束限制:必须是已存在共享带宽ID。在预付费的情况下,不填该字段。该字段取空字符串时,会被忽略。 /// [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public string Id { get; set; } diff --git a/Services/Elb/V3/Model/CreateLoadBalancerOption.cs b/Services/Elb/V3/Model/CreateLoadBalancerOption.cs index 3d45212cb..18dda80bf 100644 --- a/Services/Elb/V3/Model/CreateLoadBalancerOption.cs +++ b/Services/Elb/V3/Model/CreateLoadBalancerOption.cs @@ -11,14 +11,14 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 创建负载均衡器参数。 + /// 创建负载均衡器实例的参数对象。 /// public class CreateLoadBalancerOption { /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// 参数解释:WAF故障时的流量处理策略。 约束限制:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) 取值范围: - discard:丢弃。 - forward: 转发到后端。 默认取值:forward。 /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// 参数解释:WAF故障时的流量处理策略。 约束限制:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) 取值范围: - discard:丢弃。 - forward: 转发到后端。 默认取值:forward。 [JsonConverter(typeof(EnumClassConverter))] public class WafFailureActionEnum { @@ -131,9 +131,9 @@ public bool Equals(WafFailureActionEnum obj) } /// - /// 修改保护状态, 取值: - nonProtection: 不保护,默认值为nonProtection - consoleProtection: 控制台修改保护 + /// 参数解释:修改保护状态。用于console控制台防误修改。console感知该状态为consoleProtection时,不允许用户直接修改资源其他配置属性。 约束限制:不影响通过API修改资源属性。类似资源标记,用于提升控制台等用户易用性场景,如防误修改。 取值范围: - nonProtection: 不保护。 - consoleProtection: 控制台修改保护。 默认取值:nonProtection。 /// - /// 修改保护状态, 取值: - nonProtection: 不保护,默认值为nonProtection - consoleProtection: 控制台修改保护 + /// 参数解释:修改保护状态。用于console控制台防误修改。console感知该状态为consoleProtection时,不允许用户直接修改资源其他配置属性。 约束限制:不影响通过API修改资源属性。类似资源标记,用于提升控制台等用户易用性场景,如防误修改。 取值范围: - nonProtection: 不保护。 - consoleProtection: 控制台修改保护。 默认取值:nonProtection。 [JsonConverter(typeof(EnumClassConverter))] public class ProtectionStatusEnum { @@ -246,9 +246,9 @@ public bool Equals(ProtectionStatusEnum obj) } /// - /// 创建实例采用的计费模式。flavor: 按实例规格收费,默认值。lcu: 按使用量收费。 + /// 参数解释:负载均衡器实例的计费模式。flavor: 固定规格计费,默认值。lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 约束限制:不建议用户传该字段。系统会基于用户传入的l4_flavor_id/l7_flavor_id的规格类型,自动识别计费模式。 取值范围: - flavor: 固定规格计费。 - lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 默认取值:flavor。 /// - /// 创建实例采用的计费模式。flavor: 按实例规格收费,默认值。lcu: 按使用量收费。 + /// 参数解释:负载均衡器实例的计费模式。flavor: 固定规格计费,默认值。lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 约束限制:不建议用户传该字段。系统会基于用户传入的l4_flavor_id/l7_flavor_id的规格类型,自动识别计费模式。 取值范围: - flavor: 固定规格计费。 - lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 默认取值:flavor。 [JsonConverter(typeof(EnumClassConverter))] public class ChargeModeEnum { @@ -362,103 +362,97 @@ public bool Equals(ChargeModeEnum obj) /// - /// 负载均衡器ID(UUID)。不支持该字段,请勿使用。 - /// - [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] - public string Id { get; set; } - - /// - /// 负载均衡器所在的项目ID。 + /// 参数解释:负载均衡器实例所在的项目ID。 /// [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] public string ProjectId { get; set; } /// - /// 负载均衡器的名称。 + /// 参数解释:负载均衡器的名称。 约束限制: 可以为空, 最大长度为255个字符。 取值范围:支持中文字符、英文字符等unicode字符,且长度为[0-255]个字符。 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// 负载均衡器的描述。 + /// 参数解释:负载均衡器的描述。 约束限制: 可以为空, 最大长度为255个字符。 取值范围:支持中文字符、英文字符等unicode字符,且长度为[0-255]个字符。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } /// - /// 负载均衡器的IPv4虚拟IP。该地址必须包含在所在子网的IPv4网段内,且未被占用。 使用说明: - 传入vip_address时必须传入vip_subnet_cidr_id。 - 不传入vip_address,但传入vip_subnet_cidr_id,则自动分配IPv4虚拟IP。 - 不传入vip_address,且不传vip_subnet_cidr_id,则不分配虚拟IP,vip_address=null。 + /// 参数解释:负载均衡器的IPv4私网IP。该地址必须包含在所在子网的IPv4网段内,且未被占用。 约束限制: - 传入vip_address时,必须传入vip_subnet_cidr_id。 - 不传入vip_address,但传入vip_subnet_cidr_id,则自动分配IPv4私网IP。 - 不传入vip_address,且不传vip_subnet_cidr_id,则不分配IPv4私网IP,vip_address=null。 取值范围:满足IPv4的地址格式,[0-255].[0-255].[0-255].[0-255]. 如192.168.1.1。 /// [JsonProperty("vip_address", NullValueHandling = NullValueHandling.Ignore)] public string VipAddress { get; set; } /// - /// 负载均衡器所在子网的IPv4子网ID。若需要创建带IPv4虚拟IP的LB,该字段必须传入。 可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到。 使用说明: - vpc_id, vip_subnet_cidr_id, ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 - 若同时传入vpc_id和vip_subnet_cidr_id, 则vip_subnet_cidr_id对应的子网必须属于vpc_id对应的VPC。 + /// 参数解释:负载均衡器所在子网的IPv4子网ID,也称为该负载均衡器实例的前端子网。 约束限制: - 若创建带有IPv4私网IP的负载均衡实例,则字段必须传入。 可以通过调用VPC的API, GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到。 - vpc_id, vip_subnet_cidr_id, ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 - 若同时传入vpc_id和vip_subnet_cidr_id,则vip_subnet_cidr_id对应的子网必须属于vpc_id对应的VPC。 取值范围: 标准的UUID格式,长度为36个字符。 /// [JsonProperty("vip_subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string VipSubnetCidrId { get; set; } /// - /// 双栈类型负载均衡器所在子网的IPv6网络ID。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的id得到。 使用说明: - vpc_id,vip_subnet_cidr_id,ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 - 需要对应的子网开启IPv6。 [不支持IPv6,请勿使用。](tag:dt,dt_test) + /// 参数解释:双栈类型负载均衡器所在子网的IPv6网络ID,也称为该负载均衡器实例的前端子网。 约束限制: - 若创建带有IPv6 IP的负载均衡实例,则字段必须传入。 可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到。 - vpc_id,vip_subnet_cidr_id,ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 - 需要对应的子网开启IPv6。 [不支持IPv6,请勿使用。](tag:dt,dt_test) 取值范围: 标准的UUID格式,长度为36个字符。 /// [JsonProperty("ipv6_vip_virsubnet_id", NullValueHandling = NullValueHandling.Ignore)] public string Ipv6VipVirsubnetId { get; set; } /// - /// 负载均衡器的生产者名称。固定为vlb。 + /// 参数解释:负载均衡器的生产者名称。固定为vlb。无需指定。 /// [JsonProperty("provider", NullValueHandling = NullValueHandling.Ignore)] public string Provider { get; set; } /// - /// 网络型规格ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/flavors?type=L4 响应参数中的id得到。 - 当l4_flavor_id和l7_flavor_id都不传的时,会使用默认flavor (默认flavor根据不同局点有所不同,具体以实际值为准)。 - 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,hws_eu,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb) [只支持设置为l4_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 参数解释:网络型规格ID。 约束限制: [- 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/elb/flavors?type=L4 响应参数中的id得到。 - 当l4_flavor_id和l7_flavor_id都不传的时,会使用默认flavor(默认flavor根据不同局点有所不同,具体以实际值为准)。 - 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费。](tag:hws,hws_hk,hws_eu,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb) [只支持设置为l4_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) 取值范围: 标准的UUID格式,长度为36个字符。 /// [JsonProperty("l4_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L4FlavorId { get; set; } /// - /// 应用型规格ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/flavors?type=L7 响应参数中的id得到。 - 当l4_flavor_id和l7_flavor_id都不传的时,会使用默认flavor (默认flavor根据不同局点有所不同,具体以实际值为准)。 - 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,hws_eu,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb) [只支持设置为l7_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 参数解释:应用型规格ID。 约束限制: [- 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/elb/flavors?type=L7 响应参数中的id得到。 - 当l4_flavor_id和l7_flavor_id都不传的时,会使用默认flavor (默认flavor根据不同局点有所不同,具体以实际值为准)。 - 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费。](tag:hws,hws_hk,hws_eu,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb) [只支持设置为l7_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) 取值范围: 标准的UUID格式,长度为36个字符。 /// [JsonProperty("l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L7FlavorId { get; set; } /// - /// 是否独享型负载均衡器。 取值: - true:独享型。 - false:共享型。 当前只支持设置为true,设置为false会返回400 Bad Request 。默认:true。 + /// 参数解释:是否为独享型负载均衡器实例。 约束限制:当前只支持设置为true,设置为false会返回400 Bad Request。 取值范围:布尔类型。 - true:独享型。 - false:共享型。 默认取值:true。 /// [JsonProperty("guaranteed", NullValueHandling = NullValueHandling.Ignore)] public bool? Guaranteed { get; set; } /// - /// 负载均衡器所在的VPC ID。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/vpcs 响应参数中的id得到。 使用说明: - vpc_id,vip_subnet_cidr_id,ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 + /// 参数解释:负载均衡器所在的VPC ID。 约束限制: - 参数获取,可以通过 GET https://{VPC_Endpoint}/v1/{project_id}/vpcs 响应参数中的id得到。 - vpc_id,vip_subnet_cidr_id,ipv6_vip_virsubnet_id不能同时为空,且需要在同一个vpc下。 取值范围: 标准的UUID格式,长度为36个字符。 /// [JsonProperty("vpc_id", NullValueHandling = NullValueHandling.Ignore)] public string VpcId { get; set; } /// - /// 可用区列表。可通过GET https://{ELB_Endponit}/v3/{project_id}/elb/availability-zones 接口来查询可用区集合列表。创建负载均衡器时,从查询结果选择某一个可用区集合,并从中选择一个或多个可用区。 + /// 参数解释:负载均衡器实例所在的可用区列表。 约束限制: - 参数获取,可通过GET https://{ELB_Endponit}/v3/{project_id}/elb/availability-zones 接口来查询可用区集合列表。创建负载均衡器时,从查询结果选择某一个可用区集合,并从中选择一个或多个可用区。 - 为了支持可用区容灾,建议选取不少于2个可用区。 /// [JsonProperty("availability_zone_list", NullValueHandling = NullValueHandling.Ignore)] public List AvailabilityZoneList { get; set; } /// - /// 负载均衡器所属的企业项目ID。不能传入\"\"、\"0\"或不存在的企业项目ID,创建时不传则资源属于default企业项目,默认返回\"0\"。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) + /// 参数解释:负载均衡器所属的企业项目ID。 约束限制:不能传入\"\"、\"0\"或不存在的企业项目ID,创建时不传则资源属于default企业项目,默认返回\"0\"。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] public string EnterpriseProjectId { get; set; } /// - /// 负载均衡的标签列表。示例:\"tags\":[{\"key\":\"my_tag\",\"value\":\"my_tag_value\"}] + /// 参数解释:负载均衡的标签列表。示例:\"tags\":[{\"key\":\"my_tag\",\"value\":\"my_tag_value\"}] /// [JsonProperty("tags", NullValueHandling = NullValueHandling.Ignore)] public List Tags { get; set; } /// - /// 负载均衡器的启用状态,true表示启用,false表示停用。只能设置为true。默认:true。 [不支持该字段,请勿使用。](tag:dt,dt_test) + /// 参数解释:负载均衡器的启用状态。 取值范围:布尔类型。 - true :启用。 - false:停用。 默认取值:true。 [不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } /// - /// 资源账单信息。 取值: - 空:按需计费。 [- 非空:包周期计费。 格式为: order_id:product_id:region_id:project_id,如: CS2107161019CDJZZ:OFFI569702121789763584:az1: 057ef081eb00d2732fd1c01a9be75e6f 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 参数解释: 预付费实例的订单信息。 约束限制: - 空:按需计费。 [- 非空:包周期计费。 格式为: order_id:product_id:region_id:project_id,如: CS2107161019CDJZZ:OFFI569702121789763584:region-xxx:057ef081eb00d2732fd1c01a9be75e6f 不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("billing_info", NullValueHandling = NullValueHandling.Ignore)] public string BillingInfo { get; set; } @@ -470,7 +464,7 @@ public bool Equals(ChargeModeEnum obj) public BandwidthRef Ipv6Bandwidth { get; set; } /// - /// 负载均衡器绑定的公网IP ID。只支持绑定数组中的第一个EIP,其他将被忽略。 + /// 参数解释:负载均衡器绑定的公网IP的ID的数组。 约束限制:只支持绑定数组中的第一个EIP,其他将被忽略。 /// [JsonProperty("publicip_ids", NullValueHandling = NullValueHandling.Ignore)] public List PublicipIds { get; set; } @@ -482,19 +476,19 @@ public bool Equals(ChargeModeEnum obj) public CreateLoadBalancerPublicIpOption Publicip { get; set; } /// - /// 下联面子网的网络ID列表。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到。 若不指定该字段,则按如下规则选择下联面网络: 1. 如果ELB实例开启ipv6,则选择ipv6_vip_virsubnet_id子网对应的网络ID。 2. 如果ELB实例没有开启ipv6,开启ipv4,则选择vip_subnet_cidr_id子网对应的网络ID。 3. 如果ELB实例没有选择私网,只开启公网,则会在当前负载均衡器所在的VPC中任意选一个子网,优选可用IP多的网络。 若指定多个下联面子网,则按顺序优先使用第一个子网来为负载均衡器下联面端口分配ip地址。 下联面子网必须属于该LB所在的VPC。 + /// 参数解释:负载均衡器实例所在VPC的子网的网络ID列表。 负载均衡器实例,会预占该子网中的部分IP, 用于负载均衡器网关与该实例后端服务器通信的源地址(典型场景,健康检查探测的源地址,FULLNAT场景的源地址等)。 因此,该子网,也称为负载均衡器的后端子网。通常需要用户指定一个特殊的子网,方便用户在后端服务器关联的安全组中,放通该子网的地址段。 约束限制: 后端子网必须属于该负载均衡器实例所在的VPC。 参数的获取,使用负载均衡器所在vpc的ID查询可用子网 可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets?vpc_id=xxxx 响应参数中的neutron_network_id得到。 若不指定该字段,则按如下规则选择下联面网络: 1. 如果ELB实例开启ipv6,则选择ipv6_vip_virsubnet_id子网对应的网络ID。 2. 如果ELB实例没有开启ipv6,开启ipv4,则选择vip_subnet_cidr_id子网对应的网络ID。 3. 如果ELB实例没有选择私网,只开启公网,则会在当前负载均衡器所在的VPC中任意选一个子网,优选可用IP多的网络。 若指定多个下联面子网,则按顺序优先使用第一个子网来为负载均衡器下联面端口分配ip地址。 建议后端子网,使用一个独占的地址充足的子网,方便运维管理。 - 后端服务器安全组放通:由于负载均衡器网关会使用该子网中的预占的地址,作为源IP与后端服务器通信(健康检查探测,FULLNAT通信),为避免后端服务器关联的安全组拦截,建议将对应的子网地址段进行安全组放通。 - 预占地址变化:负载均衡实例,弹性扩缩场景,可能涉及到预占地址的变化,建议安全组对子网段放通,而不是具体预占地址的放通。 /// [JsonProperty("elb_virsubnet_ids", NullValueHandling = NullValueHandling.Ignore)] public List ElbVirsubnetIds { get; set; } /// - /// 是否启用跨VPC后端转发。 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) 取值: - true:开启。 - false:不开启。 使用说明: - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 参数解释:是否启用跨VPC后端转发。 约束限制: 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt) 取值范围: - true:开启。 - false:不开启。 /// [JsonProperty("ip_target_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? IpTargetEnable { get; set; } /// - /// 是否开启删除保护。 取值:false不开启,true开启。默认false不开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 参数解释:实例删除保护开关。 约束限制:实例删除前,需要先关闭该实例下所有资源的删除保护开关。 取值范围: - false: 不开启。 - true: 开启。 默认取值:false。 /// [JsonProperty("deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? DeletionProtectionEnable { get; set; } @@ -512,28 +506,28 @@ public bool Equals(ChargeModeEnum obj) public CreateLoadbalancerAutoscalingOption Autoscaling { get; set; } /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// 参数解释:WAF故障时的流量处理策略。 约束限制:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) 取值范围: - discard:丢弃。 - forward: 转发到后端。 默认取值:forward。 /// [JsonProperty("waf_failure_action", NullValueHandling = NullValueHandling.Ignore)] public WafFailureActionEnum WafFailureAction { get; set; } /// - /// 修改保护状态, 取值: - nonProtection: 不保护,默认值为nonProtection - consoleProtection: 控制台修改保护 + /// 参数解释:修改保护状态。用于console控制台防误修改。console感知该状态为consoleProtection时,不允许用户直接修改资源其他配置属性。 约束限制:不影响通过API修改资源属性。类似资源标记,用于提升控制台等用户易用性场景,如防误修改。 取值范围: - nonProtection: 不保护。 - consoleProtection: 控制台修改保护。 默认取值:nonProtection。 /// [JsonProperty("protection_status", NullValueHandling = NullValueHandling.Ignore)] public ProtectionStatusEnum ProtectionStatus { get; set; } /// - /// 设置保护的原因 >仅当protection_status为consoleProtection时有效。 + /// 参数解释:设置保护的原因。作为protection_status的转态设置的原因。 约束限制:仅当protection_status为consoleProtection时有效。 取值范围:通用Unicode字符集字符,最大255个字符。 /// [JsonProperty("protection_reason", NullValueHandling = NullValueHandling.Ignore)] public string ProtectionReason { get; set; } /// - /// 创建实例采用的计费模式。flavor: 按实例规格收费,默认值。lcu: 按使用量收费。 + /// 参数解释:负载均衡器实例的计费模式。flavor: 固定规格计费,默认值。lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 约束限制:不建议用户传该字段。系统会基于用户传入的l4_flavor_id/l7_flavor_id的规格类型,自动识别计费模式。 取值范围: - flavor: 固定规格计费。 - lcu: 弹性规格计费(按用户真实使用的lcu个数计费)。 默认取值:flavor。 /// [JsonProperty("charge_mode", NullValueHandling = NullValueHandling.Ignore)] public ChargeModeEnum ChargeMode { get; set; } /// - /// 双栈类型负载均衡器的IPv6地址。 [不支持IPv6,请勿使用。](tag:dt,dt_test) + /// 参数解释:负载均衡器实例的IPv6地址。 约束限制: - 必须属于ipv6_vip_virsubnet_id子网中地址。 - elb_virsubnet_ids中的后端子网必须支持双栈。 [不支持IPv6,请勿使用。](tag:dt,dt_test) /// [JsonProperty("ipv6_vip_address", NullValueHandling = NullValueHandling.Ignore)] public string Ipv6VipAddress { get; set; } @@ -547,7 +541,6 @@ public override string ToString() { var sb = new StringBuilder(); sb.Append("class CreateLoadBalancerOption {\n"); - sb.Append(" id: ").Append(Id).Append("\n"); sb.Append(" projectId: ").Append(ProjectId).Append("\n"); sb.Append(" name: ").Append(Name).Append("\n"); sb.Append(" description: ").Append(Description).Append("\n"); @@ -598,11 +591,6 @@ public bool Equals(CreateLoadBalancerOption input) return false; return - ( - this.Id == input.Id || - (this.Id != null && - this.Id.Equals(input.Id)) - ) && ( this.ProjectId == input.ProjectId || (this.ProjectId != null && @@ -762,8 +750,6 @@ public override int GetHashCode() unchecked // Overflow is fine, just wrap { int hashCode = 41; - if (this.Id != null) - hashCode = hashCode * 59 + this.Id.GetHashCode(); if (this.ProjectId != null) hashCode = hashCode * 59 + this.ProjectId.GetHashCode(); if (this.Name != null) diff --git a/Services/Elb/V3/Model/CreateLoadBalancerPublicIpOption.cs b/Services/Elb/V3/Model/CreateLoadBalancerPublicIpOption.cs index a83f96db0..01b4c30ae 100644 --- a/Services/Elb/V3/Model/CreateLoadBalancerPublicIpOption.cs +++ b/Services/Elb/V3/Model/CreateLoadBalancerPublicIpOption.cs @@ -17,25 +17,25 @@ public class CreateLoadBalancerPublicIpOption { /// - /// IP版本。 取值:4表示IPv4,6表示IPv6。 [不支持IPv6,请勿设置为6。](tag:dt,dt_test) + /// 参数解释:IP版本。 约束限制:取值只有4和6。4:IPv4, 6: IPv6。 [不支持IPv6,请勿设置为6。](tag:dt,dt_test) 取值范围: - 4:表示IPv4。 - 6:表示IPv6。 默认取值:4 /// [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] public int? IpVersion { get; set; } /// - /// 弹性公网IP的网络类型,默认5_bgp,更多请参考弹性公网ip创建。 [华南-深圳局点该参数取值只能为5_gray](tag:hws) [只支持设置为5_gray](tag:dt) + /// 参数解释:弹性公网IP的网络类型,默认5_bgp,更多请参考弹性公网ip创建。 约束限制: [华南-深圳局点该参数取值只能为5_gray。](tag:hws) [只支持设置为5_gray。](tag:dt) 取值范围:5_bgp。 默认取值:5_bgp。 /// [JsonProperty("network_type", NullValueHandling = NullValueHandling.Ignore)] public string NetworkType { get; set; } /// - /// 资源账单信息。 取值: - 空:按需计费。 [- 非空:包周期计费。](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,fcs,fcs_dt,dt) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 参数解释:计费订单信息。 约束限制: - 空:按需计费。 [ - 非空:包周期计费。格式:order_id:product_id:region_id:project_id ](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,hk_vdf,fcs,fcs_dt,dt) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("billing_info", NullValueHandling = NullValueHandling.Ignore)] public string BillingInfo { get; set; } /// - /// 弹性公网IP的描述信息,不支持特殊字符 + /// 参数解释:弹性公网IP的描述信息。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } diff --git a/Services/Elb/V3/Model/CreateLoadBalancerRequestBody.cs b/Services/Elb/V3/Model/CreateLoadBalancerRequestBody.cs index 3b5a5559c..16bd4d346 100644 --- a/Services/Elb/V3/Model/CreateLoadBalancerRequestBody.cs +++ b/Services/Elb/V3/Model/CreateLoadBalancerRequestBody.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// This is a auto create Body Object + /// 创建负载均衡器实例的参数对象。 /// public class CreateLoadBalancerRequestBody { diff --git a/Services/Elb/V3/Model/CreateLoadBalancerResponse.cs b/Services/Elb/V3/Model/CreateLoadBalancerResponse.cs index 914d1ddc3..9b05f653b 100644 --- a/Services/Elb/V3/Model/CreateLoadBalancerResponse.cs +++ b/Services/Elb/V3/Model/CreateLoadBalancerResponse.cs @@ -23,13 +23,13 @@ public class CreateLoadBalancerResponse : SdkResponse public LoadBalancer Loadbalancer { get; set; } /// - /// 负载均衡器的ID[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 负载均衡器的ID[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] public string LoadbalancerId { get; set; } /// - /// 订单号[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 订单号[(包周期场景返回该字段)](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) [不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,ctc,cmcc,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("order_id", NullValueHandling = NullValueHandling.Ignore)] public string OrderId { get; set; } diff --git a/Services/Elb/V3/Model/CreateLoadbalancerAutoscalingOption.cs b/Services/Elb/V3/Model/CreateLoadbalancerAutoscalingOption.cs index 243cde8ff..5a9b1c8c3 100644 --- a/Services/Elb/V3/Model/CreateLoadbalancerAutoscalingOption.cs +++ b/Services/Elb/V3/Model/CreateLoadbalancerAutoscalingOption.cs @@ -11,19 +11,19 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 弹性扩缩容配置信息。负载均衡器配置并开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 使用说明: - 仅当租户白名单放开后该字段才有效 - 开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该LB实例弹性规格的上限。 [该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 参数解释:弹性扩缩容配置信息。负载均衡器开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 约束限制:该字段已经废弃,建议不要使用该字段。 仅当租户白名单放开后该字段才有效,开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该负载均衡器实例弹性规格的上限。 [如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// public class CreateLoadbalancerAutoscalingOption { /// - /// 负载均衡器弹性扩缩容开关 + /// 参数解释:负载均衡器实例弹性扩缩容开关。 取值范围: - true:开启。 - false:关闭。 /// [JsonProperty("enable", NullValueHandling = NullValueHandling.Ignore)] public bool? Enable { get; set; } /// - /// 弹性扩缩容的最小七层规格ID,类型为L7_elastic,有七层监听器时,该字段不能为空。 该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。 + /// 参数解释:实例弹性扩缩容的最小七层规格ID。 约束限制: 该字段已经废弃,建议不要使用该字段。 /// [JsonProperty("min_l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string MinL7FlavorId { get; set; } diff --git a/Services/Elb/V3/Model/CreateMasterSlaveHealthMonitorOption.cs b/Services/Elb/V3/Model/CreateMasterSlaveHealthMonitorOption.cs index 84f6ebc0f..adf65e6c3 100644 --- a/Services/Elb/V3/Model/CreateMasterSlaveHealthMonitorOption.cs +++ b/Services/Elb/V3/Model/CreateMasterSlaveHealthMonitorOption.cs @@ -29,13 +29,13 @@ public class CreateMasterSlaveHealthMonitorOption public string DomainName { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 /// [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] public string ExpectedCodes { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] public string HttpMethod { get; set; } diff --git a/Services/Elb/V3/Model/CreateMasterSlaveMemberOption.cs b/Services/Elb/V3/Model/CreateMasterSlaveMemberOption.cs index bf4d43ab9..407bbe038 100644 --- a/Services/Elb/V3/Model/CreateMasterSlaveMemberOption.cs +++ b/Services/Elb/V3/Model/CreateMasterSlaveMemberOption.cs @@ -132,7 +132,7 @@ public bool Equals(RoleEnum obj) /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。 该IP地址可以是IPv4或IPv6。但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。 该IP地址可以是私网IPv4或IPv6。但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } diff --git a/Services/Elb/V3/Model/CreateMasterSlavePoolOption.cs b/Services/Elb/V3/Model/CreateMasterSlavePoolOption.cs index b96d98a3f..074609365 100644 --- a/Services/Elb/V3/Model/CreateMasterSlavePoolOption.cs +++ b/Services/Elb/V3/Model/CreateMasterSlavePoolOption.cs @@ -53,7 +53,7 @@ public class CreateMasterSlavePoolOption public string ProjectId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、QUIC。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC。 - listener的protocol为TCP时pool的protocol必须为TCP。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、QUIC、TLS。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC。 - listener的protocol为TCP时,pool的protocol必须为TCP。 - listener的protocol为TLS时,pool的protocol必须为TLS或TCP(且只能使用ip_version为v4的TCP pool)。 - 其他协议监听器不支持主备后端服务器组。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -95,7 +95,7 @@ public class CreateMasterSlavePoolOption public CreateMasterSlaveHealthMonitorOption Healthmonitor { get; set; } /// - /// 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启,默认false。 > 关闭端口透传后,请求会转发给后端服务器protocol_port字段指定端口。 + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。关闭后,请求会转发给后端服务器protocol_port字段指定端口。取值:false不开启,true开启。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 /// [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? AnyPortEnable { get; set; } diff --git a/Services/Elb/V3/Model/CreateMemberOption.cs b/Services/Elb/V3/Model/CreateMemberOption.cs index 7695ca275..2b8f6b866 100644 --- a/Services/Elb/V3/Model/CreateMemberOption.cs +++ b/Services/Elb/V3/Model/CreateMemberOption.cs @@ -17,7 +17,7 @@ public class CreateMemberOption { /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡的内网IP。 [ 不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡的内网IP。 [ 不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } @@ -47,7 +47,7 @@ public class CreateMemberOption public int? ProtocolPort { get; set; } /// - /// 后端云服务器所在的子网ID,可以是子网的IPv4子网ID或IPv6子网ID。 ipv4子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id_v6得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发已开启(ip_target_enable=true),则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 - 若所属LB未开启跨VPC后端转发,该参数必填。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) /// [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string SubnetCidrId { get; set; } diff --git a/Services/Elb/V3/Model/CreatePoolOption.cs b/Services/Elb/V3/Model/CreatePoolOption.cs index 527ff5eb7..e651e4a46 100644 --- a/Services/Elb/V3/Model/CreatePoolOption.cs +++ b/Services/Elb/V3/Model/CreatePoolOption.cs @@ -132,7 +132,7 @@ public bool Equals(ProtectionStatusEnum obj) /// - /// 后端云服务器组的管理状态,只支持更新为true。 不支持该字段,请勿使用。 + /// 后端云服务器组的管理状态,只支持设置为true。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -144,19 +144,19 @@ public bool Equals(ProtectionStatusEnum obj) public string Description { get; set; } /// - /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) + /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 [- 2_TUPLE_HASH:二元组hash算法,仅IP类型的pool支持。 - 3_TUPLE_HASH:三元组hash算法,仅IP类型的pool支持。 - 4_TUPLE_HASH:五元组hash算法,仅IP类型的pool支持。](tag:hws_eu 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) /// [JsonProperty("lb_algorithm", NullValueHandling = NullValueHandling.Ignore)] public string LbAlgorithm { get; set; } /// - /// 后端云服务器组关联的监听器的ID。 使用说明: - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 后端云服务器组关联的监听器的ID。 使用说明: - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("listener_id", NullValueHandling = NullValueHandling.Ignore)] public string ListenerId { get; set; } /// - /// 后端云服务器组关联的负载均衡器ID。 使用说明: - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 后端云服务器组关联的负载均衡器ID。 使用说明: - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] public string LoadbalancerId { get; set; } @@ -174,7 +174,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProjectId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS和QUIC。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC; - listener的protocol为TCP时pool的protocol必须为TCP; - listener的protocol为HTTP时,pool的protocol必须为HTTP。 - listener的protocol为HTTPS时,pool的protocol必须为HTTP或HTTPS。 - listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、[IP、](tag:hws_eu)TLS、GRPC、HTTP、HTTPS和QUIC。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC。 - listener的protocol为TCP时pool的protocol必须为TCP。 [- listener的protocol为IP时,pool的protocol必须为IP。](tag:hws_eu) - listener的protocol为HTTP时,pool的protocol必须为HTTP。 - listener的protocol为HTTPS时,pool的protocol必须为HTTP、HTTPS或GRPC。 - listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 - listener的protocol为QUIC时,pool的protocol必须为HTTP、HTTPS或GRPC。 - listener的protocol为TLS时,pool的protocol必须为TLS或TCP(且只能使用ip_version为v4的TCP pool)。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 - 若pool的protocol为GRPC,关联监听器的http2_enable必须为true。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -192,7 +192,7 @@ public bool Equals(ProtectionStatusEnum obj) public CreatePoolSlowStartOption SlowStart { get; set; } /// - /// 是否开启删除保护。 取值:false不开启,true开启,默认false。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护。 取值:false不开启,true开启,默认false。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("member_deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? MemberDeletionProtectionEnable { get; set; } @@ -204,13 +204,13 @@ public bool Equals(ProtectionStatusEnum obj) public string VpcId { get; set; } /// - /// 后端服务器组的类型。 取值: - instance:允许任意类型的后端,type指定为该类型时,vpc_id是必选字段。 - ip:只能添加跨VPC后端,type指定为该类型时,vpc_id不允许指定。 使用说明: - 不传表示允许任意类型的后端,并返回type为空字符串。 - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 后端服务器组的类型。 取值: - instance:允许任意类型的后端,type指定为该类型时,vpc_id是必选字段。 - ip:只能添加跨VPC后端,type指定为该类型时,vpc_id不允许指定。 使用说明: - 不传表示允许任意类型的后端,并返回type为空字符串。 - listener_id,loadbalancer_id,type至少指定一个。 [- 共享型实例的后端服务器组loadbalancer_id和listener_id至少指定一个。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } /// - /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) + /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) /// [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] public string IpVersion { get; set; } @@ -227,7 +227,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。关闭后,请求会转发给后端服务器protocol_port字段指定端口。取值:false不开启,true开启。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 /// [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? AnyPortEnable { get; set; } @@ -238,6 +238,18 @@ public bool Equals(ProtectionStatusEnum obj) [JsonProperty("connection_drain", NullValueHandling = NullValueHandling.Ignore)] public ConnectionDrain ConnectionDrain { get; set; } + /// + /// + /// + [JsonProperty("pool_health", NullValueHandling = NullValueHandling.Ignore)] + public PoolHealth PoolHealth { get; set; } + + /// + /// 可用区组,如:center + /// + [JsonProperty("public_border_group", NullValueHandling = NullValueHandling.Ignore)] + public string PublicBorderGroup { get; set; } + /// @@ -265,6 +277,8 @@ public override string ToString() sb.Append(" protectionReason: ").Append(ProtectionReason).Append("\n"); sb.Append(" anyPortEnable: ").Append(AnyPortEnable).Append("\n"); sb.Append(" connectionDrain: ").Append(ConnectionDrain).Append("\n"); + sb.Append(" poolHealth: ").Append(PoolHealth).Append("\n"); + sb.Append(" publicBorderGroup: ").Append(PublicBorderGroup).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -375,6 +389,16 @@ public bool Equals(CreatePoolOption input) this.ConnectionDrain == input.ConnectionDrain || (this.ConnectionDrain != null && this.ConnectionDrain.Equals(input.ConnectionDrain)) + ) && + ( + this.PoolHealth == input.PoolHealth || + (this.PoolHealth != null && + this.PoolHealth.Equals(input.PoolHealth)) + ) && + ( + this.PublicBorderGroup == input.PublicBorderGroup || + (this.PublicBorderGroup != null && + this.PublicBorderGroup.Equals(input.PublicBorderGroup)) ); } @@ -422,6 +446,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.AnyPortEnable.GetHashCode(); if (this.ConnectionDrain != null) hashCode = hashCode * 59 + this.ConnectionDrain.GetHashCode(); + if (this.PoolHealth != null) + hashCode = hashCode * 59 + this.PoolHealth.GetHashCode(); + if (this.PublicBorderGroup != null) + hashCode = hashCode * 59 + this.PublicBorderGroup.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/CreatePoolSlowStartOption.cs b/Services/Elb/V3/Model/CreatePoolSlowStartOption.cs index 67e49978a..a6f403517 100644 --- a/Services/Elb/V3/Model/CreatePoolSlowStartOption.cs +++ b/Services/Elb/V3/Model/CreatePoolSlowStartOption.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class CreatePoolSlowStartOption { diff --git a/Services/Elb/V3/Model/CreateRedirectPoolsConfig.cs b/Services/Elb/V3/Model/CreateRedirectPoolsConfig.cs new file mode 100644 index 000000000..bd7c16901 --- /dev/null +++ b/Services/Elb/V3/Model/CreateRedirectPoolsConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略主机组的权重配置。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 使用说明: - 当action为REDIRECT_TO_POOL时,redirect_pool_id和redirect_pools_config必须指定一个,两个都指定时按redirect_pools_config生效。 - 当action是REDIRECT_TO_LISTENER和REzDIRECT_TO_URL时,传入该字段会报错。 - 一个policy最多支持配置5个pool。Pool不允许重复。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class CreateRedirectPoolsConfig + { + + /// + /// 所在后端服务器组ID。 + /// + [JsonProperty("pool_id", NullValueHandling = NullValueHandling.Ignore)] + public string PoolId { get; set; } + + /// + /// 转发策略主机组的权重,取值范围为[1,100],默认为1。请求将根据该权重进行负载分发到不同的主机组。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 + /// + [JsonProperty("weight", NullValueHandling = NullValueHandling.Ignore)] + public string Weight { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateRedirectPoolsConfig {\n"); + sb.Append(" poolId: ").Append(PoolId).Append("\n"); + sb.Append(" weight: ").Append(Weight).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateRedirectPoolsConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateRedirectPoolsConfig input) + { + if (input == null) + return false; + + return + ( + this.PoolId == input.PoolId || + (this.PoolId != null && + this.PoolId.Equals(input.PoolId)) + ) && + ( + this.Weight == input.Weight || + (this.Weight != null && + this.Weight.Equals(input.Weight)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PoolId != null) + hashCode = hashCode * 59 + this.PoolId.GetHashCode(); + if (this.Weight != null) + hashCode = hashCode * 59 + this.Weight.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateRedirectPoolsExtendConfig.cs b/Services/Elb/V3/Model/CreateRedirectPoolsExtendConfig.cs index 61934da77..75936fee3 100644 --- a/Services/Elb/V3/Model/CreateRedirectPoolsExtendConfig.cs +++ b/Services/Elb/V3/Model/CreateRedirectPoolsExtendConfig.cs @@ -11,13 +11,13 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// + /// 转发到的后端主机组的配置。当action为REDIRECT_TO_POOL时生效。 /// public class CreateRedirectPoolsExtendConfig { /// - /// url重写的开关 + /// 是否开启url重定向。 /// [JsonProperty("rewrite_url_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? RewriteUrlEnable { get; set; } @@ -28,6 +28,24 @@ public class CreateRedirectPoolsExtendConfig [JsonProperty("rewrite_url_config", NullValueHandling = NullValueHandling.Ignore)] public CreateRewriteUrlConfig RewriteUrlConfig { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateTrafficLimitConfig TrafficLimitConfig { get; set; } + /// @@ -39,6 +57,9 @@ public override string ToString() sb.Append("class CreateRedirectPoolsExtendConfig {\n"); sb.Append(" rewriteUrlEnable: ").Append(RewriteUrlEnable).Append("\n"); sb.Append(" rewriteUrlConfig: ").Append(RewriteUrlConfig).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -69,6 +90,21 @@ public bool Equals(CreateRedirectPoolsExtendConfig input) this.RewriteUrlConfig == input.RewriteUrlConfig || (this.RewriteUrlConfig != null && this.RewriteUrlConfig.Equals(input.RewriteUrlConfig)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -84,6 +120,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.RewriteUrlEnable.GetHashCode(); if (this.RewriteUrlConfig != null) hashCode = hashCode * 59 + this.RewriteUrlConfig.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/CreateRedirectPoolsStickySessionConfig.cs b/Services/Elb/V3/Model/CreateRedirectPoolsStickySessionConfig.cs new file mode 100644 index 000000000..ccade6b37 --- /dev/null +++ b/Services/Elb/V3/Model/CreateRedirectPoolsStickySessionConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 配置转发策略关联的服务器组之间会话保持。负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个pool处理。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class CreateRedirectPoolsStickySessionConfig + { + + /// + /// 转发策略主机组会话保持开启的开关。 默认值为false,表示关闭主机组会话保持。 + /// + [JsonProperty("enable", NullValueHandling = NullValueHandling.Ignore)] + public bool? Enable { get; set; } + + /// + /// 会话保持的时间。 适用范围:范围为[1,1440](分钟),默认值1440。 [荷兰region不支持QUIC。](tag:dt,dt_test) + /// + [JsonProperty("timeout", NullValueHandling = NullValueHandling.Ignore)] + public int? Timeout { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateRedirectPoolsStickySessionConfig {\n"); + sb.Append(" enable: ").Append(Enable).Append("\n"); + sb.Append(" timeout: ").Append(Timeout).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateRedirectPoolsStickySessionConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateRedirectPoolsStickySessionConfig input) + { + if (input == null) + return false; + + return + ( + this.Enable == input.Enable || + (this.Enable != null && + this.Enable.Equals(input.Enable)) + ) && + ( + this.Timeout == input.Timeout || + (this.Timeout != null && + this.Timeout.Equals(input.Timeout)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Enable != null) + hashCode = hashCode * 59 + this.Enable.GetHashCode(); + if (this.Timeout != null) + hashCode = hashCode * 59 + this.Timeout.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateRedirectUrlConfig.cs b/Services/Elb/V3/Model/CreateRedirectUrlConfig.cs index 16af9b21f..2f59955e4 100644 --- a/Services/Elb/V3/Model/CreateRedirectUrlConfig.cs +++ b/Services/Elb/V3/Model/CreateRedirectUrlConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class CreateRedirectUrlConfig { @@ -304,6 +304,18 @@ public bool Equals(StatusCodeEnum obj) /// [JsonProperty("status_code", NullValueHandling = NullValueHandling.Ignore)] public StatusCodeEnum StatusCode { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public CreateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + /// @@ -319,6 +331,8 @@ public override string ToString() sb.Append(" path: ").Append(Path).Append("\n"); sb.Append(" query: ").Append(Query).Append("\n"); sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -369,6 +383,16 @@ public bool Equals(CreateRedirectUrlConfig input) this.StatusCode == input.StatusCode || (this.StatusCode != null && this.StatusCode.Equals(input.StatusCode)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) ); } @@ -392,6 +416,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Query.GetHashCode(); if (this.StatusCode != null) hashCode = hashCode * 59 + this.StatusCode.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/CreateRemoveHeaderConfig.cs b/Services/Elb/V3/Model/CreateRemoveHeaderConfig.cs new file mode 100644 index 000000000..0e9fa035c --- /dev/null +++ b/Services/Elb/V3/Model/CreateRemoveHeaderConfig.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数。 + /// + public class CreateRemoveHeaderConfig + { + + /// + /// 被移除的请求头的参数名。取值范围: 1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 不能移除以下请求头参数: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateRemoveHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateRemoveHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateRemoveHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateRemoveHeadersConfig.cs b/Services/Elb/V3/Model/CreateRemoveHeadersConfig.cs new file mode 100644 index 000000000..8ba28e429 --- /dev/null +++ b/Services/Elb/V3/Model/CreateRemoveHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数列表。 + /// + public class CreateRemoveHeadersConfig + { + + /// + /// 要移除的请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateRemoveHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateRemoveHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateRemoveHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/CreateRewriteUrlConfig.cs b/Services/Elb/V3/Model/CreateRewriteUrlConfig.cs index 25f081e12..afb28b733 100644 --- a/Services/Elb/V3/Model/CreateRewriteUrlConfig.cs +++ b/Services/Elb/V3/Model/CreateRewriteUrlConfig.cs @@ -11,25 +11,25 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 转发到的后端主机组的URL配置。rewrite_url_enable为true时,该字段必须传入。 + /// URL重定向配置。当action为REDIRECT_TO_POOL的时候生效。 /// public class CreateRewriteUrlConfig { /// - /// url重写的主机名。字符串只能包含英文字母、数字、“-”、“.”,必须以字母、数字开头。默认值${host}表示继承原值(即与被重写请求保持一致)。 + /// 重定向的域名。取值只能包含英文字母、数字、“-”、“.”,必须以字母、数字开头。 默认值${host},表示继承原值(即与被重写请求host保持一致)。 /// [JsonProperty("host", NullValueHandling = NullValueHandling.Ignore)] public string Host { get; set; } /// - /// url重定向的路径。默认值${path}表示继承原值(即与被重写请求保持一致)。 只能包含英文字母、数字、_~';@^-%#&$.*+?,=!:|\\/(),且必须以\"/\"开头。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#. + /// 重定向的请求路径。 取值只能包含英文字母、数字、_~';@^-%#&$.+?,=!:|/(),且必须以\"/\"开头。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认值${path}表示继承原值(即与被重写请求保持一致)。 /// [JsonProperty("path", NullValueHandling = NullValueHandling.Ignore)] public string Path { get; set; } /// - /// url重定向的查询字符串。默认${query}表示继承原值(即与被重写请求保持一致)。 只能包含英文字母、数字和特殊字符:!$&'()*+,-./:;=?@^_`。字母区分大小写。其中$1-$9会匹配请求url通配符星号(*),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$# + /// 重定向的查询字符串。取值只能包含英文字母、数字和特殊字符:!$&'()+,-./:;=?@^_`。字母区分大小写。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认${query},表示继承原值(即与被重写请求保持一致)。 /// [JsonProperty("query", NullValueHandling = NullValueHandling.Ignore)] public string Query { get; set; } diff --git a/Services/Elb/V3/Model/CreateRuleOption.cs b/Services/Elb/V3/Model/CreateRuleOption.cs index db7cf4feb..076dbe545 100644 --- a/Services/Elb/V3/Model/CreateRuleOption.cs +++ b/Services/Elb/V3/Model/CreateRuleOption.cs @@ -47,7 +47,7 @@ public class CreateRuleOption public string ProjectId { get; set; } /// - /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) + /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 - COOKIE: 匹配cookie信息。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } @@ -59,7 +59,7 @@ public class CreateRuleOption public bool? Invert { get; set; } /// - /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("conditions", NullValueHandling = NullValueHandling.Ignore)] public List Conditions { get; set; } diff --git a/Services/Elb/V3/Model/CreateTrafficLimitConfig.cs b/Services/Elb/V3/Model/CreateTrafficLimitConfig.cs new file mode 100644 index 000000000..0044f5591 --- /dev/null +++ b/Services/Elb/V3/Model/CreateTrafficLimitConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略限速的配置。 + /// + public class CreateTrafficLimitConfig + { + + /// + /// 转发策略整体限速。取值: 0-100000s。0表示不限速 + /// + [JsonProperty("qps", NullValueHandling = NullValueHandling.Ignore)] + public int? Qps { get; set; } + + /// + /// 对转发策略单源进行限速。 quic监听器下转发策略不支持配置单源限速。指定该字段时,赋值可以为0或者为null。 取值: 0-100000s。0表示不限速,如果qps不为0,per_source_ip_qps需要小于qps。 + /// + [JsonProperty("per_source_ip_qps", NullValueHandling = NullValueHandling.Ignore)] + public int? PerSourceIpQps { get; set; } + + /// + /// 对转发策略单源进行限速。取值: 0-100000s。当qps超限的时候,不返回503,支持允许局部突增burst大小的请求。 + /// + [JsonProperty("burst", NullValueHandling = NullValueHandling.Ignore)] + public int? Burst { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CreateTrafficLimitConfig {\n"); + sb.Append(" qps: ").Append(Qps).Append("\n"); + sb.Append(" perSourceIpQps: ").Append(PerSourceIpQps).Append("\n"); + sb.Append(" burst: ").Append(Burst).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CreateTrafficLimitConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CreateTrafficLimitConfig input) + { + if (input == null) + return false; + + return + ( + this.Qps == input.Qps || + (this.Qps != null && + this.Qps.Equals(input.Qps)) + ) && + ( + this.PerSourceIpQps == input.PerSourceIpQps || + (this.PerSourceIpQps != null && + this.PerSourceIpQps.Equals(input.PerSourceIpQps)) + ) && + ( + this.Burst == input.Burst || + (this.Burst != null && + this.Burst.Equals(input.Burst)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Qps != null) + hashCode = hashCode * 59 + this.Qps.GetHashCode(); + if (this.PerSourceIpQps != null) + hashCode = hashCode * 59 + this.PerSourceIpQps.GetHashCode(); + if (this.Burst != null) + hashCode = hashCode * 59 + this.Burst.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/DeleteIpGroupRequest.cs b/Services/Elb/V3/Model/DeleteIpGroupRequest.cs index 68dc92f36..ff3eb667a 100644 --- a/Services/Elb/V3/Model/DeleteIpGroupRequest.cs +++ b/Services/Elb/V3/Model/DeleteIpGroupRequest.cs @@ -17,7 +17,7 @@ public class DeleteIpGroupRequest { /// - /// IP地址组的ID。 + /// 参数解释:IP地址组的ID。 /// [SDKProperty("ipgroup_id", IsPath = true)] [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/FixtedResponseConfig.cs b/Services/Elb/V3/Model/FixtedResponseConfig.cs index 35768d9fc..a24e098f6 100644 --- a/Services/Elb/V3/Model/FixtedResponseConfig.cs +++ b/Services/Elb/V3/Model/FixtedResponseConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class FixtedResponseConfig { @@ -166,6 +166,24 @@ public bool Equals(ContentTypeEnum obj) [JsonProperty("message_body", NullValueHandling = NullValueHandling.Ignore)] public string MessageBody { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public InsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public RemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public TrafficLimitConfig TrafficLimitConfig { get; set; } + /// @@ -178,6 +196,9 @@ public override string ToString() sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); sb.Append(" contentType: ").Append(ContentType).Append("\n"); sb.Append(" messageBody: ").Append(MessageBody).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -213,6 +234,21 @@ public bool Equals(FixtedResponseConfig input) this.MessageBody == input.MessageBody || (this.MessageBody != null && this.MessageBody.Equals(input.MessageBody)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -230,6 +266,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.ContentType.GetHashCode(); if (this.MessageBody != null) hashCode = hashCode * 59 + this.MessageBody.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/Flavor.cs b/Services/Elb/V3/Model/Flavor.cs index 409a640c5..715f283b8 100644 --- a/Services/Elb/V3/Model/Flavor.cs +++ b/Services/Elb/V3/Model/Flavor.cs @@ -17,7 +17,7 @@ public class Flavor { /// - /// 规格ID。 + /// 参数解释:规格ID。 /// [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public string Id { get; set; } @@ -29,35 +29,47 @@ public class Flavor public FlavorInfo Info { get; set; } /// - /// 规格名称。 规格名称与控制台展示的对应关系如下: 网络型有如下规格: - L4_flavor.elb.s1.small: 小型 I - L4_flavor.elb.s2.small: 小型 II - L4_flavor.elb.s1.medium: 中型 I - L4_flavor.elb.s2.medium: 中型 II - L4_flavor.elb.s1.large: 大型 I - L4_flavor.elb.s2.large: 大型 II 应用型有如下规格: - L7_flavor.elb.s1.small: 小型 I - L7_flavor.elb.s2.small: 小型 II - L7_flavor.elb.s1.medium: 中型 I - L7_flavor.elb.s2.medium: 中型 II - L7_flavor.elb.s1.large: 大型 I - L7_flavor.elb.s2.large: 大型 II - L7_flavor.elb.s1.extra-large: 超大型 I - L7_flavor.elb.s2.extra-large: 超大型 II + /// 参数解释:规格名称。 取值范围: 网络型有如下规格: - L4_flavor.elb.s1.small: 小型 I - L4_flavor.elb.s2.small: 小型 II - L4_flavor.elb.s1.medium: 中型 I - L4_flavor.elb.s2.medium: 中型 II - L4_flavor.elb.s1.large: 大型 I - L4_flavor.elb.s2.large: 大型 II - L4_flavor.elb.pro.max: 四层弹性规格 应用型有如下规格: - L7_flavor.elb.s1.small: 小型 I - L7_flavor.elb.s2.small: 小型 II - L7_flavor.elb.s1.medium: 中型 I - L7_flavor.elb.s2.medium: 中型 II - L7_flavor.elb.s1.large: 大型 I - L7_flavor.elb.s2.large: 大型 II - L7_flavor.elb.s1.extra-large: 超大型 I - L7_flavor.elb.s2.extra-large: 超大型 II - L7_flavor.elb.pro.max: 七层弹性规格 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// 是否公共规格。 取值: - true表示公共规格,所有租户可见。 - false表示私有规格,为当前租户所有。 + /// 参数解释:是否公共规格。 取值范围: - true表示公共规格,所有租户可见。 - false表示私有规格,为当前租户所有。 /// [JsonProperty("shared", NullValueHandling = NullValueHandling.Ignore)] public bool? Shared { get; set; } /// - /// 项目ID。 + /// 参数解释:项目ID。 /// [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] public string ProjectId { get; set; } /// - /// 规格类别。 取值: - L4和L7 表示四层网络型和七层应用型flavor。 - L4_elastic和L7_elastic 表示弹性扩缩容实例的下限规格。 - L4_elastic_max和L7_elastic_max 表示弹性扩缩容实例的上限规格。 + /// 参数解释:规格类别。 取值: - L4和L7 表示四层网络型和七层应用型flavor。 [- gateway 表示网关型LB的flavor,目前只支持弹性计费类型。当前仅支持欧洲局点。](tag:hws_eu) - L4_elastic和L7_elastic 表示弹性扩缩容实例的下限规格。 - L4_elastic_max、L7_elastic_max[和gateway_elastic_max](tag:hws_eu) 表示弹性扩缩容实例的上限规格。 /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } /// - /// [是否售罄。](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,fcs,fcs_dt,dt) [是否无法购买该规格的LB](tag:ocb,tm) 取值: - true:[已售罄,将](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,fcs,fcs_dt,dt)无法购买该规格的LB。 - false:[未售罄,](tag:hws,hk,hws_eu,otc,tlf,ctc,hcso,sbc,g42,cmcc,hk_g42,dt_test,hcso_dt,mix,hk_sbc,hws_ocb,fcs,fcs_dt,dt)可购买该规格的LB。 + /// 参数解释: [是否售罄。](tag:hws,hk,hws_eu,otc,tlf,ctc,sbc,g42,cmcc,hk_g42,dt_test,mix,hk_sbc,hws_ocb,dt) [是否无法购买该规格的LB](tag:ocb,tm,fcs,fcs_dt,hcso,hcso_dt,hk_vdf) 取值范围: - true:[已售罄,将](tag:hws,hk,hws_eu,otc,tlf,ctc,sbc,g42,cmcc,hk_g42,dt_test,mix,hk_sbc,hws_ocb,dt)无法购买该规格的LB。 - false:[未售罄,](tag:hws,hk,hws_eu,otc,tlf,ctc,sbc,g42,cmcc,hk_g42,dt_test,mix,hk_sbc,hws_ocb,dt)可购买该规格的LB。 /// [JsonProperty("flavor_sold_out", NullValueHandling = NullValueHandling.Ignore)] public bool? FlavorSoldOut { get; set; } + /// + /// 参数解释:可用区组,如:center + /// + [JsonProperty("public_border_group", NullValueHandling = NullValueHandling.Ignore)] + public string PublicBorderGroup { get; set; } + + /// + /// 参数解释:可用区组编码。 取值范围:0表示center,21表示homezone。 + /// + [JsonProperty("category", NullValueHandling = NullValueHandling.Ignore)] + public int? Category { get; set; } + /// @@ -74,6 +86,8 @@ public override string ToString() sb.Append(" projectId: ").Append(ProjectId).Append("\n"); sb.Append(" type: ").Append(Type).Append("\n"); sb.Append(" flavorSoldOut: ").Append(FlavorSoldOut).Append("\n"); + sb.Append(" publicBorderGroup: ").Append(PublicBorderGroup).Append("\n"); + sb.Append(" category: ").Append(Category).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -129,6 +143,16 @@ public bool Equals(Flavor input) this.FlavorSoldOut == input.FlavorSoldOut || (this.FlavorSoldOut != null && this.FlavorSoldOut.Equals(input.FlavorSoldOut)) + ) && + ( + this.PublicBorderGroup == input.PublicBorderGroup || + (this.PublicBorderGroup != null && + this.PublicBorderGroup.Equals(input.PublicBorderGroup)) + ) && + ( + this.Category == input.Category || + (this.Category != null && + this.Category.Equals(input.Category)) ); } @@ -154,6 +178,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Type.GetHashCode(); if (this.FlavorSoldOut != null) hashCode = hashCode * 59 + this.FlavorSoldOut.GetHashCode(); + if (this.PublicBorderGroup != null) + hashCode = hashCode * 59 + this.PublicBorderGroup.GetHashCode(); + if (this.Category != null) + hashCode = hashCode * 59 + this.Category.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/HealthMonitor.cs b/Services/Elb/V3/Model/HealthMonitor.cs index 30f99e664..afb541aa5 100644 --- a/Services/Elb/V3/Model/HealthMonitor.cs +++ b/Services/Elb/V3/Model/HealthMonitor.cs @@ -35,13 +35,13 @@ public class HealthMonitor public string DomainName { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:若健康检查type为gRPC,则默认值为0,;其他为200。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 /// [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] public string ExpectedCodes { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] public string HttpMethod { get; set; } @@ -95,7 +95,7 @@ public class HealthMonitor public int? Timeout { get; set; } /// - /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS、TLS和GRPC。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为GRPC,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为TLS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } diff --git a/Services/Elb/V3/Model/InsertHeaderConfig.cs b/Services/Elb/V3/Model/InsertHeaderConfig.cs new file mode 100644 index 000000000..112bd9f67 --- /dev/null +++ b/Services/Elb/V3/Model/InsertHeaderConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加请求头参数。 + /// + public class InsertHeaderConfig + { + + /// + /// 支持1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 key不能是以下字符: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out。 + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + /// + /// 可选值:USER_DEFINED,REFERENCE_HEADER,SYSTEM_DEFINED。 + /// + [JsonProperty("value_type", NullValueHandling = NullValueHandling.Ignore)] + public string ValueType { get; set; } + + /// + /// header值。当value_type为SYSTEM_DEFINED时,value只可从CLIENT-PORT,CLIENT-IP, ELB-PROTOCOL, ELB-ID, ELB-PORT, ELB-EIP, ELB-VIP中取值。 取值范围:1-128个字符, 支持ascii码值32<=ch<=127范围内可打印字符,*和英文问号?。不能以空格开头或结尾。 + /// + [JsonProperty("value", NullValueHandling = NullValueHandling.Ignore)] + public string Value { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class InsertHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append(" valueType: ").Append(ValueType).Append("\n"); + sb.Append(" value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as InsertHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(InsertHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ) && + ( + this.ValueType == input.ValueType || + (this.ValueType != null && + this.ValueType.Equals(input.ValueType)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + if (this.ValueType != null) + hashCode = hashCode * 59 + this.ValueType.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/InsertHeadersConfig.cs b/Services/Elb/V3/Model/InsertHeadersConfig.cs new file mode 100644 index 000000000..2b5299bba --- /dev/null +++ b/Services/Elb/V3/Model/InsertHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加的请求头参数列表。 + /// + public class InsertHeadersConfig + { + + /// + /// 要添加请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class InsertHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as InsertHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(InsertHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/IpGroup.cs b/Services/Elb/V3/Model/IpGroup.cs index 1af8c5dee..e374e8788 100644 --- a/Services/Elb/V3/Model/IpGroup.cs +++ b/Services/Elb/V3/Model/IpGroup.cs @@ -17,49 +17,55 @@ public class IpGroup { /// - /// IP地址组的创建时间。 + /// 参数解释:IP地址组的ID。 /// - [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] - public string CreatedAt { get; set; } + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } /// - /// IP地址组的描述信息。 + /// 参数解释:IP地址组的名称。 /// - [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] - public string Description { get; set; } + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } /// - /// IP地址组的ID。 + /// 参数解释:IP地址组的描述信息。 /// - [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] - public string Id { get; set; } + [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] + public string Description { get; set; } /// - /// IP地址组中包含的IP或网段列表。[]表示任意IP。 + /// 参数解释:IP地址组中包含的IP或网段列表。[]表示任意IP。 /// [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } /// - /// 与IP地址组关联的监听器的ID列表。 + /// 参数解释:与IP地址组关联的监听器的ID列表。 /// [JsonProperty("listeners", NullValueHandling = NullValueHandling.Ignore)] public List Listeners { get; set; } /// - /// IP地址组的名称。 + /// 参数解释:IP地址组的项目ID。 /// - [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] - public string Name { get; set; } + [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] + public string ProjectId { get; set; } /// - /// IP地址组的项目ID。 + /// 参数解释:IP地址组所在的企业项目ID。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// - [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] - public string ProjectId { get; set; } + [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] + public string EnterpriseProjectId { get; set; } /// - /// IP地址组的更新时间。 + /// 参数解释:IP地址组的创建时间。 + /// + [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreatedAt { get; set; } + + /// + /// 参数解释:IP地址组的更新时间。 /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } @@ -73,13 +79,14 @@ public override string ToString() { var sb = new StringBuilder(); sb.Append("class IpGroup {\n"); - sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); - sb.Append(" description: ").Append(Description).Append("\n"); sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" description: ").Append(Description).Append("\n"); sb.Append(" ipList: ").Append(IpList).Append("\n"); sb.Append(" listeners: ").Append(Listeners).Append("\n"); - sb.Append(" name: ").Append(Name).Append("\n"); sb.Append(" projectId: ").Append(ProjectId).Append("\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); + sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); sb.Append(" updatedAt: ").Append(UpdatedAt).Append("\n"); sb.Append("}\n"); return sb.ToString(); @@ -103,20 +110,20 @@ public bool Equals(IpGroup input) return ( - this.CreatedAt == input.CreatedAt || - (this.CreatedAt != null && - this.CreatedAt.Equals(input.CreatedAt)) + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) ) && ( this.Description == input.Description || (this.Description != null && this.Description.Equals(input.Description)) ) && - ( - this.Id == input.Id || - (this.Id != null && - this.Id.Equals(input.Id)) - ) && ( this.IpList == input.IpList || this.IpList != null && @@ -129,16 +136,21 @@ public bool Equals(IpGroup input) input.Listeners != null && this.Listeners.SequenceEqual(input.Listeners) ) && - ( - this.Name == input.Name || - (this.Name != null && - this.Name.Equals(input.Name)) - ) && ( this.ProjectId == input.ProjectId || (this.ProjectId != null && this.ProjectId.Equals(input.ProjectId)) ) && + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + (this.EnterpriseProjectId != null && + this.EnterpriseProjectId.Equals(input.EnterpriseProjectId)) + ) && + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && ( this.UpdatedAt == input.UpdatedAt || (this.UpdatedAt != null && @@ -154,20 +166,22 @@ public override int GetHashCode() unchecked // Overflow is fine, just wrap { int hashCode = 41; - if (this.CreatedAt != null) - hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); - if (this.Description != null) - hashCode = hashCode * 59 + this.Description.GetHashCode(); if (this.Id != null) hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.Description != null) + hashCode = hashCode * 59 + this.Description.GetHashCode(); if (this.IpList != null) hashCode = hashCode * 59 + this.IpList.GetHashCode(); if (this.Listeners != null) hashCode = hashCode * 59 + this.Listeners.GetHashCode(); - if (this.Name != null) - hashCode = hashCode * 59 + this.Name.GetHashCode(); if (this.ProjectId != null) hashCode = hashCode * 59 + this.ProjectId.GetHashCode(); + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); + if (this.CreatedAt != null) + hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); if (this.UpdatedAt != null) hashCode = hashCode * 59 + this.UpdatedAt.GetHashCode(); return hashCode; diff --git a/Services/Elb/V3/Model/IpGroupIp.cs b/Services/Elb/V3/Model/IpGroupIp.cs index 81a196beb..728564040 100644 --- a/Services/Elb/V3/Model/IpGroupIp.cs +++ b/Services/Elb/V3/Model/IpGroupIp.cs @@ -17,7 +17,7 @@ public class IpGroupIp { /// - /// IP地址,可以是具体的IP地址或者IP地址段。 + /// 参数解释:IP地址,可以是具体的IP地址或者IP地址段。 /// [JsonProperty("ip", NullValueHandling = NullValueHandling.Ignore)] public string Ip { get; set; } diff --git a/Services/Elb/V3/Model/IpInfo.cs b/Services/Elb/V3/Model/IpInfo.cs index 530f74d70..1a54200ad 100644 --- a/Services/Elb/V3/Model/IpInfo.cs +++ b/Services/Elb/V3/Model/IpInfo.cs @@ -17,13 +17,13 @@ public class IpInfo { /// - /// IP地址组中的IP地址。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 参数解释:IP地址组中的IP地址。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("ip", NullValueHandling = NullValueHandling.Ignore)] public string Ip { get; set; } /// - /// IP地址组中ip的备注信息 + /// 参数解释:IP地址组中ip的备注信息。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } diff --git a/Services/Elb/V3/Model/L7Policy.cs b/Services/Elb/V3/Model/L7Policy.cs index 51d5aa2ae..f4a1caa5f 100644 --- a/Services/Elb/V3/Model/L7Policy.cs +++ b/Services/Elb/V3/Model/L7Policy.cs @@ -59,7 +59,7 @@ public class L7Policy public int? Position { get; set; } /// - /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序,精确>前缀>正则, 匹配类型相同时,path的长度越长优先级越高。若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段,则新创建的转发策略的优先级的值为: 同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序,精确>前缀>正则, 匹配类型相同时,path的长度越长优先级越高。若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段,则新创建的转发策略的优先级的值为: 同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("priority", NullValueHandling = NullValueHandling.Ignore)] public int? Priority { get; set; } @@ -71,7 +71,7 @@ public class L7Policy public string ProjectId { get; set; } /// - /// 转发策略的配置状态。 取值范围: - ACTIVE: 默认值,表示正常。 [- ERROR: 表示当前策略与同一监听器下的其他策略存在相同的规则配置。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs) + /// 转发策略的配置状态。 取值范围: - ACTIVE: 默认值,表示正常。 [- ERROR: 表示当前策略与同一监听器下的其他策略存在相同的规则配置。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs) /// [JsonProperty("provisioning_status", NullValueHandling = NullValueHandling.Ignore)] public string ProvisioningStatus { get; set; } @@ -106,6 +106,18 @@ public class L7Policy [JsonProperty("redirect_url_config", NullValueHandling = NullValueHandling.Ignore)] public RedirectUrlConfig RedirectUrlConfig { get; set; } + /// + /// 转发到多个主机组列表。一个policy最多配置5个pool。 + /// + [JsonProperty("redirect_pools_config", NullValueHandling = NullValueHandling.Ignore)] + public List RedirectPoolsConfig { get; set; } + + /// + /// + /// + [JsonProperty("redirect_pools_sticky_session_config", NullValueHandling = NullValueHandling.Ignore)] + public RedirectPoolsStickySessionConfig RedirectPoolsStickySessionConfig { get; set; } + /// /// /// @@ -119,13 +131,13 @@ public class L7Policy public FixtedResponseConfig FixedResponseConfig { get; set; } /// - /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] public string CreatedAt { get; set; } /// - /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } @@ -154,6 +166,8 @@ public override string ToString() sb.Append(" redirectUrl: ").Append(RedirectUrl).Append("\n"); sb.Append(" rules: ").Append(Rules).Append("\n"); sb.Append(" redirectUrlConfig: ").Append(RedirectUrlConfig).Append("\n"); + sb.Append(" redirectPoolsConfig: ").Append(RedirectPoolsConfig).Append("\n"); + sb.Append(" redirectPoolsStickySessionConfig: ").Append(RedirectPoolsStickySessionConfig).Append("\n"); sb.Append(" redirectPoolsExtendConfig: ").Append(RedirectPoolsExtendConfig).Append("\n"); sb.Append(" fixedResponseConfig: ").Append(FixedResponseConfig).Append("\n"); sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); @@ -255,6 +269,17 @@ public bool Equals(L7Policy input) (this.RedirectUrlConfig != null && this.RedirectUrlConfig.Equals(input.RedirectUrlConfig)) ) && + ( + this.RedirectPoolsConfig == input.RedirectPoolsConfig || + this.RedirectPoolsConfig != null && + input.RedirectPoolsConfig != null && + this.RedirectPoolsConfig.SequenceEqual(input.RedirectPoolsConfig) + ) && + ( + this.RedirectPoolsStickySessionConfig == input.RedirectPoolsStickySessionConfig || + (this.RedirectPoolsStickySessionConfig != null && + this.RedirectPoolsStickySessionConfig.Equals(input.RedirectPoolsStickySessionConfig)) + ) && ( this.RedirectPoolsExtendConfig == input.RedirectPoolsExtendConfig || (this.RedirectPoolsExtendConfig != null && @@ -315,6 +340,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Rules.GetHashCode(); if (this.RedirectUrlConfig != null) hashCode = hashCode * 59 + this.RedirectUrlConfig.GetHashCode(); + if (this.RedirectPoolsConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsConfig.GetHashCode(); + if (this.RedirectPoolsStickySessionConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsStickySessionConfig.GetHashCode(); if (this.RedirectPoolsExtendConfig != null) hashCode = hashCode * 59 + this.RedirectPoolsExtendConfig.GetHashCode(); if (this.FixedResponseConfig != null) diff --git a/Services/Elb/V3/Model/L7Rule.cs b/Services/Elb/V3/Model/L7Rule.cs index 69b36c7dd..3c93d1b15 100644 --- a/Services/Elb/V3/Model/L7Rule.cs +++ b/Services/Elb/V3/Model/L7Rule.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class L7Rule { /// - /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) + /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 - COOKIE: 匹配cookie信息。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) /// - /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) + /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 - COOKIE: 匹配cookie信息。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) [JsonConverter(typeof(EnumClassConverter))] public class TypeEnum { @@ -168,7 +168,7 @@ public bool Equals(TypeEnum obj) public string CompareType { get; set; } /// - /// 匹配内容的键值。[type为HOST_NAME和PATH时,该字段不生效。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) + /// 匹配内容的键值。[type为HOST_NAME和PATH时,该字段不生效。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) /// [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] public string Key { get; set; } @@ -180,7 +180,7 @@ public bool Equals(TypeEnum obj) public string ProjectId { get; set; } /// - /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) + /// 转发规则类别。 取值: - HOST_NAME:匹配域名。 - PATH:匹配请求路径。 - METHOD:匹配请求方法。 - HEADER:匹配请求头。 - QUERY_STRING:匹配请求查询参数。 - SOURCE_IP:匹配请求源IP地址。 - COOKIE: 匹配cookie信息。 使用说明: - 一个l7policy下创建的l7rule的HOST_NAME,PATH,METHOD,SOURCE_IP不能重复。 HEADER、QUERY_STRING支持重复的rule配置。 [只支持取值为HOST_NAME,PATH。](tag:hcso_dt) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public TypeEnum Type { get; set; } @@ -209,19 +209,19 @@ public bool Equals(TypeEnum obj) public string Id { get; set; } /// - /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("conditions", NullValueHandling = NullValueHandling.Ignore)] public List Conditions { get; set; } /// - /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] public string CreatedAt { get; set; } /// - /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } diff --git a/Services/Elb/V3/Model/ListAllMembersRequest.cs b/Services/Elb/V3/Model/ListAllMembersRequest.cs index cfbdd0826..8e12314d4 100644 --- a/Services/Elb/V3/Model/ListAllMembersRequest.cs +++ b/Services/Elb/V3/Model/ListAllMembersRequest.cs @@ -24,7 +24,7 @@ public class ListAllMembersRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListAllMembersResponse.cs b/Services/Elb/V3/Model/ListAllMembersResponse.cs index 28d473b35..6b67b40ce 100644 --- a/Services/Elb/V3/Model/ListAllMembersResponse.cs +++ b/Services/Elb/V3/Model/ListAllMembersResponse.cs @@ -32,7 +32,7 @@ public class ListAllMembersResponse : SdkResponse /// 后端服务器对象列表。 /// [JsonProperty("members", NullValueHandling = NullValueHandling.Ignore)] - public List Members { get; set; } + public List Members { get; set; } diff --git a/Services/Elb/V3/Model/ListCertificatesRequest.cs b/Services/Elb/V3/Model/ListCertificatesRequest.cs index 1883b96eb..e3dfa0bba 100644 --- a/Services/Elb/V3/Model/ListCertificatesRequest.cs +++ b/Services/Elb/V3/Model/ListCertificatesRequest.cs @@ -24,7 +24,7 @@ public class ListCertificatesRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -79,6 +79,20 @@ public class ListCertificatesRequest [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public List Type { get; set; } + /// + /// 证书的主域名。 支持多值查询,查询条件格式:common_name=xxx&common_name=xxx。 + /// + [SDKProperty("common_name", IsQuery = true)] + [JsonProperty("common_name", NullValueHandling = NullValueHandling.Ignore)] + public List CommonName { get; set; } + + /// + /// 证书的指纹。 支持多值查询,查询条件格式:fingerprint=xxx&fingerprint=xxx。 + /// + [SDKProperty("fingerprint", IsQuery = true)] + [JsonProperty("fingerprint", NullValueHandling = NullValueHandling.Ignore)] + public List Fingerprint { get; set; } + /// @@ -97,6 +111,8 @@ public override string ToString() sb.Append(" adminStateUp: ").Append(AdminStateUp).Append("\n"); sb.Append(" domain: ").Append(Domain).Append("\n"); sb.Append(" type: ").Append(Type).Append("\n"); + sb.Append(" commonName: ").Append(CommonName).Append("\n"); + sb.Append(" fingerprint: ").Append(Fingerprint).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -167,6 +183,18 @@ public bool Equals(ListCertificatesRequest input) this.Type != null && input.Type != null && this.Type.SequenceEqual(input.Type) + ) && + ( + this.CommonName == input.CommonName || + this.CommonName != null && + input.CommonName != null && + this.CommonName.SequenceEqual(input.CommonName) + ) && + ( + this.Fingerprint == input.Fingerprint || + this.Fingerprint != null && + input.Fingerprint != null && + this.Fingerprint.SequenceEqual(input.Fingerprint) ); } @@ -196,6 +224,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Domain.GetHashCode(); if (this.Type != null) hashCode = hashCode * 59 + this.Type.GetHashCode(); + if (this.CommonName != null) + hashCode = hashCode * 59 + this.CommonName.GetHashCode(); + if (this.Fingerprint != null) + hashCode = hashCode * 59 + this.Fingerprint.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/ListFlavorsRequest.cs b/Services/Elb/V3/Model/ListFlavorsRequest.cs index 3522f865a..4d2b1a13d 100644 --- a/Services/Elb/V3/Model/ListFlavorsRequest.cs +++ b/Services/Elb/V3/Model/ListFlavorsRequest.cs @@ -17,49 +17,49 @@ public class ListFlavorsRequest { /// - /// 上一页最后一条记录的ID。 使用说明: - 必须与limit一起使用。 - 不指定时表示查询第一页。 - 该字段不允许为空或无效的ID。 + /// 参数解释:上一页最后一条记录的ID。 使用说明: - 必须与limit一起使用。 - 不指定时表示查询第一页。 - 该字段不允许为空或无效的ID。 /// [SDKProperty("marker", IsQuery = true)] [JsonProperty("marker", NullValueHandling = NullValueHandling.Ignore)] public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] public int? Limit { get; set; } /// - /// 是否反向查询。 取值: - true:查询上一页。 - false:查询下一页,默认。 使用说明: - 必须与limit一起使用。 - 当page_reverse=true时,若要查询上一页,marker取值为当前页返回值的previous_marker。 + /// 参数解释:是否反向查询。 取值: - true:查询上一页。 - false:查询下一页,默认。 使用说明: - 必须与limit一起使用。 - 当page_reverse=true时,若要查询上一页,marker取值为当前页返回值的previous_marker。 /// [SDKProperty("page_reverse", IsQuery = true)] [JsonProperty("page_reverse", NullValueHandling = NullValueHandling.Ignore)] public bool? PageReverse { get; set; } /// - /// 规格ID。 支持多值查询,查询条件格式:*id=xxx&id=xxx*。 + /// 参数解释:规格ID。 支持多值查询,查询条件格式:*id=xxx&id=xxx*。 /// [SDKProperty("id", IsQuery = true)] [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public List Id { get; set; } /// - /// 规格名称。 支持多值查询,查询条件格式:*name=xxx&name=xxx*。 + /// 参数解释:规格名称。 支持多值查询,查询条件格式:*name=xxx&name=xxx*。 /// [SDKProperty("name", IsQuery = true)] [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public List Name { get; set; } /// - /// 规格类别。 取值: - L4和L7 表示四层网络型和七层应用型flavor。 - L4_elastic和L7_elastic 表示弹性扩缩容实例的下限规格。 - L4_elastic_max和L7_elastic_max 表示弹性扩缩容实例的上限规格。 支持多值查询,查询条件格式:*type=xxx&type=xxx*。 + /// 参数解释:规格类别。 取值: - L4和L7 表示四层网络型和七层应用型flavor。 [- gateway 表示网关型LB的flavor,目前只支持弹性计费类型。当前仅支持欧洲局点。](tag:hws_eu) - L4_elastic和L7_elastic 表示弹性扩缩容实例的下限规格。 - L4_elastic_max、L7_elastic_max[和gateway_elastic_max](tag:hws_eu) 表示弹性扩缩容实例的上限规格。 支持多值查询,查询条件格式:*type=xxx&type=xxx*。 /// [SDKProperty("type", IsQuery = true)] [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public List Type { get; set; } /// - /// 是否查询公共规格。true表示公共规格,所有租户可见。false表示私有规格,为当前租户所有。 + /// 参数解释:是否查询公共规格。 取值范围:true表示公共规格,所有租户可见。false表示私有规格,为当前租户所有。 /// [SDKProperty("shared", IsQuery = true)] [JsonProperty("shared", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListFlavorsResponse.cs b/Services/Elb/V3/Model/ListFlavorsResponse.cs index c23f0a4d1..cc7c8ef40 100644 --- a/Services/Elb/V3/Model/ListFlavorsResponse.cs +++ b/Services/Elb/V3/Model/ListFlavorsResponse.cs @@ -17,7 +17,7 @@ public class ListFlavorsResponse : SdkResponse { /// - /// 规格列表。 + /// 参数解释:规格列表。 /// [JsonProperty("flavors", NullValueHandling = NullValueHandling.Ignore)] public List Flavors { get; set; } @@ -29,7 +29,7 @@ public class ListFlavorsResponse : SdkResponse public PageInfo PageInfo { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/ListHealthMonitorsRequest.cs b/Services/Elb/V3/Model/ListHealthMonitorsRequest.cs index e6b1a8955..5bbbe5971 100644 --- a/Services/Elb/V3/Model/ListHealthMonitorsRequest.cs +++ b/Services/Elb/V3/Model/ListHealthMonitorsRequest.cs @@ -24,7 +24,7 @@ public class ListHealthMonitorsRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -101,14 +101,14 @@ public class ListHealthMonitorsRequest public int? Timeout { get; set; } /// - /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS。 支持多值查询,查询条件格式:*****type=xxx&type=xxx*****。 + /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS、TLS和GRPC。 支持多值查询,查询条件格式:*****type=xxx&type=xxx*****。 /// [SDKProperty("type", IsQuery = true)] [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public List Type { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 支持多值查询,查询条件格式:****expected_codes=xxx&expected_codes=xxx****。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 支持多值查询,查询条件格式:****expected_codes=xxx&expected_codes=xxx****。 /// [SDKProperty("expected_codes", IsQuery = true)] [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] @@ -122,7 +122,7 @@ public class ListHealthMonitorsRequest public List UrlPath { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH。 支持多值查询,查询条件格式:**http_method=xxx&http_method=xxx**。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST。 支持多值查询,查询条件格式:**http_method=xxx&http_method=xxx**。 /// [SDKProperty("http_method", IsQuery = true)] [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListIpGroupsRequest.cs b/Services/Elb/V3/Model/ListIpGroupsRequest.cs index 68a70012d..c472e9561 100644 --- a/Services/Elb/V3/Model/ListIpGroupsRequest.cs +++ b/Services/Elb/V3/Model/ListIpGroupsRequest.cs @@ -17,54 +17,61 @@ public class ListIpGroupsRequest { /// - /// 上一页最后一条记录的ID。 使用说明: - 必须与limit一起使用。 - 不指定时表示查询第一页。 - 该字段不允许为空或无效的ID。 + /// 参数解释:上一页最后一条记录的ID。 使用说明: - 必须与limit一起使用。 - 不指定时表示查询第一页。 - 该字段不允许为空或无效的ID。 /// [SDKProperty("marker", IsQuery = true)] [JsonProperty("marker", NullValueHandling = NullValueHandling.Ignore)] public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] public int? Limit { get; set; } /// - /// 是否反向查询。 取值: - true:查询上一页。 - false:查询下一页,默认。 使用说明: - 必须与limit一起使用。 - 当page_reverse=true时,若要查询上一页,marker取值为当前页返回值的previous_marker。 + /// 参数解释:是否反向查询。 取值: - true:查询上一页。 - false:查询下一页,默认。 使用说明: - 必须与limit一起使用。 - 当page_reverse=true时,若要查询上一页,marker取值为当前页返回值的previous_marker。 /// [SDKProperty("page_reverse", IsQuery = true)] [JsonProperty("page_reverse", NullValueHandling = NullValueHandling.Ignore)] public bool? PageReverse { get; set; } /// - /// IP地址组的ID。 + /// 参数解释:IP地址组的ID。 /// [SDKProperty("id", IsQuery = true)] [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public List Id { get; set; } /// - /// IP地址组的名称。 + /// 参数解释:IP地址组的名称。 /// [SDKProperty("name", IsQuery = true)] [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public List Name { get; set; } /// - /// IP地址组的描述信息。 + /// 参数解释:IP地址组的描述信息。 /// [SDKProperty("description", IsQuery = true)] [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public List Description { get; set; } /// - /// IP地址,多个用逗号分隔。 + /// 参数解释:IP地址,多个用逗号分隔。 /// [SDKProperty("ip_list", IsQuery = true)] [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } + /// + /// 参数解释:企业项目ID。 + /// + [SDKProperty("enterprise_project_id", IsQuery = true)] + [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] + public List EnterpriseProjectId { get; set; } + /// @@ -81,6 +88,7 @@ public override string ToString() sb.Append(" name: ").Append(Name).Append("\n"); sb.Append(" description: ").Append(Description).Append("\n"); sb.Append(" ipList: ").Append(IpList).Append("\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -140,6 +148,12 @@ public bool Equals(ListIpGroupsRequest input) this.IpList != null && input.IpList != null && this.IpList.SequenceEqual(input.IpList) + ) && + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + this.EnterpriseProjectId != null && + input.EnterpriseProjectId != null && + this.EnterpriseProjectId.SequenceEqual(input.EnterpriseProjectId) ); } @@ -165,6 +179,8 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Description.GetHashCode(); if (this.IpList != null) hashCode = hashCode * 59 + this.IpList.GetHashCode(); + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/ListIpGroupsResponse.cs b/Services/Elb/V3/Model/ListIpGroupsResponse.cs index 2c650409f..dafe30f91 100644 --- a/Services/Elb/V3/Model/ListIpGroupsResponse.cs +++ b/Services/Elb/V3/Model/ListIpGroupsResponse.cs @@ -17,13 +17,13 @@ public class ListIpGroupsResponse : SdkResponse { /// - /// IP地址组列表返回对象。 + /// 参数解释:IP地址组列表返回对象。 /// [JsonProperty("ipgroups", NullValueHandling = NullValueHandling.Ignore)] public List Ipgroups { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/ListL7PoliciesRequest.cs b/Services/Elb/V3/Model/ListL7PoliciesRequest.cs index 4191565b1..12e3e5db0 100644 --- a/Services/Elb/V3/Model/ListL7PoliciesRequest.cs +++ b/Services/Elb/V3/Model/ListL7PoliciesRequest.cs @@ -24,7 +24,7 @@ public class ListL7PoliciesRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListL7RulesRequest.cs b/Services/Elb/V3/Model/ListL7RulesRequest.cs index cdeb27707..1ccc5fe32 100644 --- a/Services/Elb/V3/Model/ListL7RulesRequest.cs +++ b/Services/Elb/V3/Model/ListL7RulesRequest.cs @@ -24,7 +24,7 @@ public class ListL7RulesRequest public string L7policyId { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListListenersRequest.cs b/Services/Elb/V3/Model/ListListenersRequest.cs index 615007e02..50298c02a 100644 --- a/Services/Elb/V3/Model/ListListenersRequest.cs +++ b/Services/Elb/V3/Model/ListListenersRequest.cs @@ -17,7 +17,7 @@ public class ListListenersRequest { /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -38,14 +38,14 @@ public class ListListenersRequest public bool? PageReverse { get; set; } /// - /// 监听器的前端监听端口。 支持多值查询,查询条件格式:*protocol_port=xxx&protocol_port=xxx*。 + /// 监听器的前端监听端口。 [当监听器的protocol为IP时,前端端口固定为0。](tag:hws_eu) 支持多值查询,查询条件格式:*protocol_port=xxx&protocol_port=xxx*。 /// [SDKProperty("protocol_port", IsQuery = true)] [JsonProperty("protocol_port", NullValueHandling = NullValueHandling.Ignore)] public List ProtocolPort { get; set; } /// - /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC。 说明:TERMINATED_HTTPS为共享型LB上的监听器独有的协议。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [取值:TCP、UDP、HTTP、HTTPS。](tag:hws_eu,hcso_dt) 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) + /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC、TLS。 说明:TERMINATED_HTTPS为共享型LB上的监听器独有的协议。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [取值:TCP、UDP、IP、HTTP、HTTPS。IP为网关型LB上的监听器独有的协议。](tag:hws_eu,hcso_dt) 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) /// [SDKProperty("protocol", IsQuery = true)] [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] @@ -73,7 +73,7 @@ public class ListListenersRequest public List ClientCaTlsContainerRef { get; set; } /// - /// 监听器的管理状态,只能设置为true。 不支持该字段,请勿使用。 + /// 监听器的管理状态。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [SDKProperty("admin_state_up", IsQuery = true)] [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] @@ -171,28 +171,28 @@ public class ListListenersRequest public List ClientTimeout { get; set; } /// - /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - TCP监听器:10-4000s。 - HTTP/HTTPS/TERMINATED_HTTPS监听器:0-4000s。 - 共享型实例的UDP监听器不支持此字段。 支持多值查询,查询条件格式:*keepalive_timeout=xxx&keepalive_timeout=xxx*。 + /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - TCP监听器[和IP监听器](tag:hws_eu):10-4000s。 - HTTP/HTTPS/TERMINATED_HTTPS监听器:0-4000s。 [- 共享型实例的UDP监听器不支持此字段。](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,dt_test,hk_tm) 支持多值查询,查询条件格式:*keepalive_timeout=xxx&keepalive_timeout=xxx*。 /// [SDKProperty("keepalive_timeout", IsQuery = true)] [JsonProperty("keepalive_timeout", NullValueHandling = NullValueHandling.Ignore)] public List KeepaliveTimeout { get; set; } /// - /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。取值:true开启,false不开启。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。取值:true开启,false不开启。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [SDKProperty("transparent_client_ip_enable", IsQuery = true)] [JsonProperty("transparent_client_ip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? TransparentClientIpEnable { get; set; } /// - /// 是否开启proxy_protocol。仅tcpssl监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 + /// 是否开启proxy_protocol。仅TLS监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 /// [SDKProperty("proxy_protocol_enable", IsQuery = true)] [JsonProperty("proxy_protocol_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? ProxyProtocolEnable { get; set; } /// - /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [SDKProperty("enhance_l7policy_enable", IsQuery = true)] [JsonProperty("enhance_l7policy_enable", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListLoadBalancersRequest.cs b/Services/Elb/V3/Model/ListLoadBalancersRequest.cs index 92e4ba5a9..7a04b1ffe 100644 --- a/Services/Elb/V3/Model/ListLoadBalancersRequest.cs +++ b/Services/Elb/V3/Model/ListLoadBalancersRequest.cs @@ -24,7 +24,7 @@ public class ListLoadBalancersRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -59,7 +59,7 @@ public class ListLoadBalancersRequest public List Description { get; set; } /// - /// 负载均衡器的管理状态。 不支持该字段,请勿使用。 + /// 参数解释:负载均衡器的启用状态。 取值范围:布尔类型。 - true :启用。 - false:停用。 [不支持该字段,请勿使用。](tag:dt,dt_test) /// [SDKProperty("admin_state_up", IsQuery = true)] [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] @@ -108,7 +108,7 @@ public class ListLoadBalancersRequest public List VipAddress { get; set; } /// - /// 负载均衡器所在子网的IPv4子网ID。 支持多值查询,查询条件格式:*vip_subnet_cidr_id=xxx&vip_subnet_cidr_id=xxx*。 + /// 负载均衡器所在子网的IPv4子网ID,也称为该负载均衡器实例的前端子网。 支持多值查询,查询条件格式:*vip_subnet_cidr_id=xxx&vip_subnet_cidr_id=xxx*。 /// [SDKProperty("vip_subnet_cidr_id", IsQuery = true)] [JsonProperty("vip_subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] @@ -129,21 +129,21 @@ public class ListLoadBalancersRequest public List Ipv6VipAddress { get; set; } /// - /// 双栈类型负载均衡器所在的子网IPv6网络ID。 支持多值查询,查询条件格式:*ipv6_vip_virsubnet_id=xxx&ipv6_vip_virsubnet_id=xxx*。 [不支持IPv6,请勿使用。](tag:dt,dt_test) + /// 双栈类型负载均衡器所在的子网IPv6网络ID,也称为该负载均衡器实例的前端子网。 支持多值查询,查询条件格式:*ipv6_vip_virsubnet_id=xxx&ipv6_vip_virsubnet_id=xxx*。 [不支持IPv6,请勿使用。](tag:dt,dt_test) /// [SDKProperty("ipv6_vip_virsubnet_id", IsQuery = true)] [JsonProperty("ipv6_vip_virsubnet_id", NullValueHandling = NullValueHandling.Ignore)] public List Ipv6VipVirsubnetId { get; set; } /// - /// 负载均衡器绑定的EIP。示例如下: \"eips\": [ { \"eip_id\": \"e9b72a9d-4275-455e-a724-853504e4d9c6\", \"eip_address\": \"88.88.14.122\", \"ip_version\": 4 } ] 支持多值查询,查询条件格式: - eip_id作为查询条件:*eips=eip_id=xxx&eips=eip_id=xxx*。 - eip_address作为查询条件:*eips=eip_address=xxx&eips=eip_address=xxx*。 - ip_version作为查询条件:*eips=ip_version=xxx&eips=ip_version=xxx*。 注:该字段与publicips字段一致。 + /// 负载均衡器绑定的EIP。例如要查询绑定以下EIP的LB: \"eips\": [ { \"eip_id\": \"e9b72a9d-4275-455e-a724-853504e4d9c6\", \"eip_address\": \"88.88.14.122\", \"ip_version\": 4 } ] 可以通如下查询: eips=ip_version%3D4&eips=eip_address%3D88.88.14.122&eips=eip_id%3De9b72a9d-4275-455e-a724-853504e4d9c6 支持多值查询,查询条件格式: - eip_id作为查询条件:*eips=eip_id=xxx&eips=eip_id=xxx*。 - eip_address作为查询条件:*eips=eip_address=xxx&eips=eip_address=xxx*。 - ip_version作为查询条件:*eips=ip_version=xxx&eips=ip_version=xxx*。 注:该字段与publicips字段一致。 /// [SDKProperty("eips", IsQuery = true)] [JsonProperty("eips", NullValueHandling = NullValueHandling.Ignore)] public List Eips { get; set; } /// - /// 负载均衡器绑定的公网IP。示例如下: \"publicips\": [ { \"publicip_id\": \"e9b72a9d-4275-455e-a724-853504e4d9c6\", \"publicip_address\": \"88.88.14.122\", \"ip_version\": 4 } ] 支持多值查询,查询条件格式: - publicip_id作为查询条件: *publicips=publicip_id=xxx&publicips=publicip_id=xxx* - publicip_address作为查询条件: *publicips=publicip_address=xxx&publicips=publicip_address=xxx* - ip_version作为查询条件: *publicips=ip_version=xxx&publicips=ip_version=xxx* 注:该字段与eips字段一致。 + /// 负载均衡器绑定的公网IP。例如要查询绑定以下公网IP的LB: \"publicips=\": [ { \"public_id\": \"e9b72a9d-4275-455e-a724-853504e4d9c6\", \"public_address\": \"88.88.14.122\", \"ip_version\": 4 } ] 可以通如下查询: publicips=ip_version%3D4&publicips=public_address%3D88.88.14.122&publicips=public_id%3De9b72a9d-4275-455e-a724-853504e4d9c6 支持多值查询,查询条件格式: - publicip_id作为查询条件: *publicips=publicip_id=xxx&publicips=publicip_id=xxx* - publicip_address作为查询条件: *publicips=publicip_address=xxx&publicips=publicip_address=xxx* - ip_version作为查询条件: *publicips=ip_version=xxx&publicips=ip_version=xxx* 注:该字段与eips字段一致。 /// [SDKProperty("publicips", IsQuery = true)] [JsonProperty("publicips", NullValueHandling = NullValueHandling.Ignore)] @@ -157,7 +157,7 @@ public class ListLoadBalancersRequest public List AvailabilityZoneList { get; set; } /// - /// 网络型规格ID。 支持多值查询,查询条件格式:*l4_flavor_id=xxx&l4_flavor_id=xxx*。 [不支持该字段,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 网络型规格ID。 支持多值查询,查询条件格式:*l4_flavor_id=xxx&l4_flavor_id=xxx*。 [不支持该字段,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [SDKProperty("l4_flavor_id", IsQuery = true)] [JsonProperty("l4_flavor_id", NullValueHandling = NullValueHandling.Ignore)] @@ -171,7 +171,7 @@ public class ListLoadBalancersRequest public List L4ScaleFlavorId { get; set; } /// - /// 应用型规格ID。 支持多值查询,查询条件格式:*l7_flavor_id=xxx&l7_flavor_id=xxx*。 [不支持该字段,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 应用型规格ID。 支持多值查询,查询条件格式:*l7_flavor_id=xxx&l7_flavor_id=xxx*。 [不支持该字段,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [SDKProperty("l7_flavor_id", IsQuery = true)] [JsonProperty("l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] @@ -185,7 +185,7 @@ public class ListLoadBalancersRequest public List L7ScaleFlavorId { get; set; } /// - /// 资源账单信息。 支持多值查询,查询条件格式:*billing_info=xxx&billing_info=xxx*。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// 资源账单信息。 支持多值查询,查询条件格式:*billing_info=xxx&billing_info=xxx*。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) /// [SDKProperty("billing_info", IsQuery = true)] [JsonProperty("billing_info", NullValueHandling = NullValueHandling.Ignore)] @@ -220,7 +220,7 @@ public class ListLoadBalancersRequest public List IpVersion { get; set; } /// - /// 是否开启删除保护,false不开启,true开启。[不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护,false不开启,true开启。[不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [SDKProperty("deletion_protection_enable", IsQuery = true)] [JsonProperty("deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListLogtanksRequest.cs b/Services/Elb/V3/Model/ListLogtanksRequest.cs index f26d60688..93cfcba2a 100644 --- a/Services/Elb/V3/Model/ListLogtanksRequest.cs +++ b/Services/Elb/V3/Model/ListLogtanksRequest.cs @@ -17,7 +17,7 @@ public class ListLogtanksRequest { /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListMasterSlavePoolsRequest.cs b/Services/Elb/V3/Model/ListMasterSlavePoolsRequest.cs index 2df05dfa9..2d906af37 100644 --- a/Services/Elb/V3/Model/ListMasterSlavePoolsRequest.cs +++ b/Services/Elb/V3/Model/ListMasterSlavePoolsRequest.cs @@ -24,7 +24,7 @@ public class ListMasterSlavePoolsRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -73,7 +73,7 @@ public class ListMasterSlavePoolsRequest public List LoadbalancerId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS和QUIC。 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、[IP、](tag:hws_eu)TLS、GRPC、HTTP、HTTPS和QUIC。 IP类型为网关型LB独有的后端服务器组协议。 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [SDKProperty("protocol", IsQuery = true)] [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListMembersRequest.cs b/Services/Elb/V3/Model/ListMembersRequest.cs index acf8d10de..f9610f77f 100644 --- a/Services/Elb/V3/Model/ListMembersRequest.cs +++ b/Services/Elb/V3/Model/ListMembersRequest.cs @@ -31,7 +31,7 @@ public class ListMembersRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ListPoolsRequest.cs b/Services/Elb/V3/Model/ListPoolsRequest.cs index e66090555..5ebf41c67 100644 --- a/Services/Elb/V3/Model/ListPoolsRequest.cs +++ b/Services/Elb/V3/Model/ListPoolsRequest.cs @@ -24,7 +24,7 @@ public class ListPoolsRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] @@ -45,7 +45,7 @@ public class ListPoolsRequest public List Description { get; set; } /// - /// 后端云服务器组的管理状态。 不支持该字段,请勿使用。 + /// 后端云服务器组的管理状态。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [SDKProperty("admin_state_up", IsQuery = true)] [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] @@ -80,14 +80,14 @@ public class ListPoolsRequest public List LoadbalancerId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS、QUIC和TCPSSL。 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC协议。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、[IP、](tag:hws_eu)TLS、HTTP、HTTPS、QUIC和GRPC。 支持多值查询,查询条件格式:*protocol=xxx&protocol=xxx*。 [不支持QUIC协议。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [SDKProperty("protocol", IsQuery = true)] [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public List Protocol { get; set; } /// - /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 支持多值查询,查询条件格式:*lb_algorithm=xxx&lb_algorithm=xxx*。 [不支持QUIC_CID。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) + /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 [- 2_TUPLE_HASH:二元组hash算法,仅IP类型的pool支持。 - 3_TUPLE_HASH:三元组hash算法,仅IP类型的pool支持。 - 4_TUPLE_HASH:五元组hash算法,仅IP类型的pool支持。](tag:hws_eu) 支持多值查询,查询条件格式:*lb_algorithm=xxx&lb_algorithm=xxx*。 [不支持QUIC_CID。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) /// [SDKProperty("lb_algorithm", IsQuery = true)] [JsonProperty("lb_algorithm", NullValueHandling = NullValueHandling.Ignore)] @@ -122,7 +122,7 @@ public class ListPoolsRequest public List MemberDeviceId { get; set; } /// - /// 是否开启删除保护,false不开启,true开启,不传查询全部。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护,false不开启,true开启,不传查询全部。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [SDKProperty("member_deletion_protection_enable", IsQuery = true)] [JsonProperty("member_deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] @@ -170,6 +170,27 @@ public class ListPoolsRequest [JsonProperty("connection_drain", NullValueHandling = NullValueHandling.Ignore)] public bool? ConnectionDrain { get; set; } + /// + /// 查询是否开启后端全下线转发功能,查询条件格式:*pool_health=minimum_healthy_member_count=0或者*pool_health=minimum_healthy_member_count=1 + /// + [SDKProperty("pool_health", IsQuery = true)] + [JsonProperty("pool_health", NullValueHandling = NullValueHandling.Ignore)] + public string PoolHealth { get; set; } + + /// + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启。 + /// + [SDKProperty("any_port_enable", IsQuery = true)] + [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] + public bool? AnyPortEnable { get; set; } + + /// + /// 可用区组 + /// + [SDKProperty("public_border_group", IsQuery = true)] + [JsonProperty("public_border_group", NullValueHandling = NullValueHandling.Ignore)] + public string PublicBorderGroup { get; set; } + /// @@ -201,6 +222,9 @@ public override string ToString() sb.Append(" type: ").Append(Type).Append("\n"); sb.Append(" protectionStatus: ").Append(ProtectionStatus).Append("\n"); sb.Append(" connectionDrain: ").Append(ConnectionDrain).Append("\n"); + sb.Append(" poolHealth: ").Append(PoolHealth).Append("\n"); + sb.Append(" anyPortEnable: ").Append(AnyPortEnable).Append("\n"); + sb.Append(" publicBorderGroup: ").Append(PublicBorderGroup).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -347,6 +371,21 @@ public bool Equals(ListPoolsRequest input) this.ConnectionDrain == input.ConnectionDrain || (this.ConnectionDrain != null && this.ConnectionDrain.Equals(input.ConnectionDrain)) + ) && + ( + this.PoolHealth == input.PoolHealth || + (this.PoolHealth != null && + this.PoolHealth.Equals(input.PoolHealth)) + ) && + ( + this.AnyPortEnable == input.AnyPortEnable || + (this.AnyPortEnable != null && + this.AnyPortEnable.Equals(input.AnyPortEnable)) + ) && + ( + this.PublicBorderGroup == input.PublicBorderGroup || + (this.PublicBorderGroup != null && + this.PublicBorderGroup.Equals(input.PublicBorderGroup)) ); } @@ -402,6 +441,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.ProtectionStatus.GetHashCode(); if (this.ConnectionDrain != null) hashCode = hashCode * 59 + this.ConnectionDrain.GetHashCode(); + if (this.PoolHealth != null) + hashCode = hashCode * 59 + this.PoolHealth.GetHashCode(); + if (this.AnyPortEnable != null) + hashCode = hashCode * 59 + this.AnyPortEnable.GetHashCode(); + if (this.PublicBorderGroup != null) + hashCode = hashCode * 59 + this.PublicBorderGroup.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/ListSecurityPoliciesRequest.cs b/Services/Elb/V3/Model/ListSecurityPoliciesRequest.cs index 57f532455..9066a2d0b 100644 --- a/Services/Elb/V3/Model/ListSecurityPoliciesRequest.cs +++ b/Services/Elb/V3/Model/ListSecurityPoliciesRequest.cs @@ -24,7 +24,7 @@ public class ListSecurityPoliciesRequest public string Marker { get; set; } /// - /// 每页返回的个数。 + /// 参数解释:每页返回的个数。 取值范围:0-2000 默认取值:2000 /// [SDKProperty("limit", IsQuery = true)] [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/Listener.cs b/Services/Elb/V3/Model/Listener.cs index 75fe2ab47..30b7c9d02 100644 --- a/Services/Elb/V3/Model/Listener.cs +++ b/Services/Elb/V3/Model/Listener.cs @@ -132,7 +132,7 @@ public bool Equals(ProtectionStatusEnum obj) /// - /// 监听器的管理状态。只能设置为true。 不支持该字段,请勿使用。 + /// 监听器的管理状态。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -210,7 +210,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProjectId { get; set; } /// - /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC、TCPSSL。 使用说明: - 共享型LB上的HTTPS监听器只支持设置为TERMINATED_HTTPS, 创建时传入HTTPS将会自动转为TERMINATED_HTTPS。 - 独享型LB上的HTTPS监听器只支持设置为HTTPS,创建时传入TERMINATED_HTTPS将会自动转为HTTPS。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [取值:TCP、UDP、HTTP、HTTPS。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) + /// 监听器的监听协议。 [取值:TCP、UDP、HTTP、HTTPS、TERMINATED_HTTPS、QUIC、TLS。 使用说明: - 共享型LB上的HTTPS监听器只支持设置为TERMINATED_HTTPS, 创建时传入HTTPS将会自动转为TERMINATED_HTTPS。 - 独享型LB上的HTTPS监听器只支持设置为HTTPS,创建时传入TERMINATED_HTTPS将会自动转为HTTPS。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [取值:TCP、UDP、IP、HTTP、HTTPS。IP为网关型LB上的监听器独有的协议。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -246,7 +246,7 @@ public bool Equals(ProtectionStatusEnum obj) public string UpdatedAt { get; set; } /// - /// 监听器使用的安全策略。 [取值:tls-1-0-inherit,tls-1-0, tls-1-1, tls-1-2,tls-1-2-strict,tls-1-2-fs,tls-1-0-with-1-3, tls-1-2-fs-with-1-3, hybrid-policy-1-0,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0, tls-1-1, tls-1-2, tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,ocb,tlf,ctc,hcso,sbc,g42,tm,cmcc,hk-g42,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,dt,dt_test) + /// 监听器使用的安全策略。 [取值:tls-1-0-inherit、tls-1-0、tls-1-1、 tls-1-2、tls-1-2-strict、tls-1-2-fs、tls-1-0-with-1-3、 tls-1-2-fs-with-1-3、 hybrid-policy-1-0、tls-1-2-strict-no-cbc,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0、tls-1-1、tls-1-2、 tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,ocb,tlf,ctc,hcso,sbc,g42,tm,cmcc,hk-g42,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,dt,dt_test) /// [JsonProperty("tls_ciphers_policy", NullValueHandling = NullValueHandling.Ignore)] public string TlsCiphersPolicy { get; set; } @@ -258,13 +258,13 @@ public bool Equals(ProtectionStatusEnum obj) public string SecurityPolicyId { get; set; } /// - /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) + /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,dt,dt_test) /// [JsonProperty("enable_member_retry", NullValueHandling = NullValueHandling.Ignore)] public bool? EnableMemberRetry { get; set; } /// - /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - 若为TCP监听器,取值范围为(10-4000s)默认值为300s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 + /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - TCP监听器[和IP监听器](tag:hws_eu):10-4000s,默认值为300s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 /// [JsonProperty("keepalive_timeout", NullValueHandling = NullValueHandling.Ignore)] public int? KeepaliveTimeout { get; set; } @@ -288,19 +288,19 @@ public bool Equals(ProtectionStatusEnum obj) public ListenerIpGroup Ipgroup { get; set; } /// - /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) + /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) /// [JsonProperty("transparent_client_ip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? TransparentClientIpEnable { get; set; } /// - /// 是否开启proxy_protocol。仅tcpssl监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 + /// 是否开启proxy_protocol。仅TLS监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 /// [JsonProperty("proxy_protocol_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? ProxyProtocolEnable { get; set; } /// - /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启,默认false。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启,默认false。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("enhance_l7policy_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? EnhanceL7policyEnable { get; set; } @@ -323,7 +323,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) + /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) /// [JsonProperty("gzip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? GzipEnable { get; set; } diff --git a/Services/Elb/V3/Model/ListenerRef.cs b/Services/Elb/V3/Model/ListenerRef.cs index 73bd5d5de..e5085732a 100644 --- a/Services/Elb/V3/Model/ListenerRef.cs +++ b/Services/Elb/V3/Model/ListenerRef.cs @@ -17,7 +17,7 @@ public class ListenerRef { /// - /// 监听器ID。 + /// 参数解释:监听器ID。 /// [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] public string Id { get; set; } diff --git a/Services/Elb/V3/Model/LoadBalancer.cs b/Services/Elb/V3/Model/LoadBalancer.cs index 7a1510403..133846731 100644 --- a/Services/Elb/V3/Model/LoadBalancer.cs +++ b/Services/Elb/V3/Model/LoadBalancer.cs @@ -307,7 +307,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProjectId { get; set; } /// - /// 负载均衡器所在子网的IPv4子网ID。 + /// 负载均衡器所在子网的IPv4子网ID,也称为该负载均衡器实例的前端子网。 /// [JsonProperty("vip_subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string VipSubnetCidrId { get; set; } @@ -367,7 +367,7 @@ public bool Equals(ProtectionStatusEnum obj) public string Ipv6VipAddress { get; set; } /// - /// 双栈类型负载均衡器所在子网的IPv6网络ID。 [不支持IPv6,请勿使用。](tag:dt,dt_test) + /// 双栈类型负载均衡器所在子网的IPv6网络ID,也称为该负载均衡器实例的前端子网。 [不支持IPv6,请勿使用。](tag:dt,dt_test) /// [JsonProperty("ipv6_vip_virsubnet_id", NullValueHandling = NullValueHandling.Ignore)] public string Ipv6VipVirsubnetId { get; set; } @@ -391,13 +391,13 @@ public bool Equals(ProtectionStatusEnum obj) public string EnterpriseProjectId { get; set; } /// - /// 资源账单信息。 取值: - 空:按需计费。 [- 非空:包周期计费, 包周期计费billing_info字段的格式为:order_id:product_id:region_id:project_id,如: CS2107161019CDJZZ:OFFI569702121789763584: az:057ef081eb00d2732fd1c01a9be75e6f 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 资源账单信息。 取值: - 空:按需计费。 [- 非空:包周期计费, 包周期计费billing_info字段的格式为:order_id:product_id:region_id:project_id,如: CS2107161019CDJZZ:OFFI569702121789763584: az:057ef081eb00d2732fd1c01a9be75e6f 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("billing_info", NullValueHandling = NullValueHandling.Ignore)] public string BillingInfo { get; set; } /// - /// 网络型规格ID。 对于弹性扩缩容实例,表示上限规格。 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费; 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费 [hsco场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 网络型规格ID。 对于弹性扩缩容实例,表示上限规格。 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费; 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费 [hsco场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("l4_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L4FlavorId { get; set; } @@ -409,7 +409,7 @@ public bool Equals(ProtectionStatusEnum obj) public string L4ScaleFlavorId { get; set; } /// - /// 应用型ID。 对于弹性扩缩容实例,表示上限规格ID。 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费; 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费 [hsco场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 应用型ID。 对于弹性扩缩容实例,表示上限规格ID。 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费; 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费 [hsco场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L7FlavorId { get; set; } @@ -427,7 +427,7 @@ public bool Equals(ProtectionStatusEnum obj) public List Publicips { get; set; } /// - /// 负载均衡器绑定的global eip。只支持绑定一个globaleip。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,fcs,ctc,ocb,hws_ocb) + /// 负载均衡器绑定的global eip。只支持绑定一个globaleip。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hk_vdf,fcs,ctc,ocb,hws_ocb) /// [JsonProperty("global_eips", NullValueHandling = NullValueHandling.Ignore)] public List GlobalEips { get; set; } @@ -444,7 +444,7 @@ public bool Equals(ProtectionStatusEnum obj) [JsonProperty("elb_virsubnet_type", NullValueHandling = NullValueHandling.Ignore)] public ElbVirsubnetTypeEnum ElbVirsubnetType { get; set; } /// - /// 是否启用跨VPC后端转发。 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) 取值: - true:开启。 - false:不开启。 使用说明: - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否启用跨VPC后端转发。 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) 取值: - true:开启。 - false:不开启。 使用说明: - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("ip_target_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? IpTargetEnable { get; set; } @@ -462,7 +462,7 @@ public bool Equals(ProtectionStatusEnum obj) public BandwidthRef Ipv6Bandwidth { get; set; } /// - /// 是否开启删除保护。 取值: - false:不开启。 - true:开启。 >退场时需要先关闭所有资源的删除保护开关。 仅当前局点启用删除保护特性后才会返回该字段。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护。 取值: - false:不开启。 - true:开启。 >退场时需要先关闭所有资源的删除保护开关。 仅当前局点启用删除保护特性后才会返回该字段。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? DeletionProtectionEnable { get; set; } @@ -486,7 +486,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ChargeMode { get; set; } /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) /// [JsonProperty("waf_failure_action", NullValueHandling = NullValueHandling.Ignore)] public string WafFailureAction { get; set; } diff --git a/Services/Elb/V3/Model/LoadBalancerStatusPolicy.cs b/Services/Elb/V3/Model/LoadBalancerStatusPolicy.cs index 3587260f2..33abda05c 100644 --- a/Services/Elb/V3/Model/LoadBalancerStatusPolicy.cs +++ b/Services/Elb/V3/Model/LoadBalancerStatusPolicy.cs @@ -29,7 +29,7 @@ public class LoadBalancerStatusPolicy public string Id { get; set; } /// - /// 转发策略的配置状态。 取值范围: - ACTIVE: 默认值,表示正常。 [- ERROR: 表示当前策略与同一监听器下的其他策略存在相同的规则配置。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs) + /// 转发策略的配置状态。 取值范围: - ACTIVE: 默认值,表示正常。 [- ERROR: 表示当前策略与同一监听器下的其他策略存在相同的规则配置。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs) /// [JsonProperty("provisioning_status", NullValueHandling = NullValueHandling.Ignore)] public string ProvisioningStatus { get; set; } diff --git a/Services/Elb/V3/Model/MasterSlaveHealthMonitor.cs b/Services/Elb/V3/Model/MasterSlaveHealthMonitor.cs index d3a0fb170..110585d57 100644 --- a/Services/Elb/V3/Model/MasterSlaveHealthMonitor.cs +++ b/Services/Elb/V3/Model/MasterSlaveHealthMonitor.cs @@ -35,13 +35,13 @@ public class MasterSlaveHealthMonitor public string DomainName { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 /// [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] public string ExpectedCodes { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] public string HttpMethod { get; set; } diff --git a/Services/Elb/V3/Model/MasterSlaveMember.cs b/Services/Elb/V3/Model/MasterSlaveMember.cs index 456d1d567..4103621bd 100644 --- a/Services/Elb/V3/Model/MasterSlaveMember.cs +++ b/Services/Elb/V3/Model/MasterSlaveMember.cs @@ -47,7 +47,7 @@ public class MasterSlaveMember public int? ProtocolPort { get; set; } /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } diff --git a/Services/Elb/V3/Model/MasterSlavePool.cs b/Services/Elb/V3/Model/MasterSlavePool.cs index f8a8d6c1f..2c9e0fd48 100644 --- a/Services/Elb/V3/Model/MasterSlavePool.cs +++ b/Services/Elb/V3/Model/MasterSlavePool.cs @@ -65,7 +65,7 @@ public class MasterSlavePool public string ProjectId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS和QUIC。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC; - listener的protocol为TCP时pool的protocol必须为TCP; - listener的protocol为HTTP时,pool的protocol必须为HTTP。 - listener的protocol为HTTPS时,pool的protocol必须为HTTP或HTTPS。 - listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、QUIC、TLS。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC。 - listener的protocol为TCP时,pool的protocol必须为TCP。 - listener的protocol为TLS时,pool的protocol必须为TLS或TCP。 - 其他协议监听器不支持主备后端服务器组。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -77,19 +77,19 @@ public class MasterSlavePool public SessionPersistence SessionPersistence { get; set; } /// - /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) + /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) /// [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] public string IpVersion { get; set; } /// - /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] public string CreatedAt { get; set; } /// - /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } @@ -119,7 +119,7 @@ public class MasterSlavePool public MasterSlaveHealthMonitor Healthmonitor { get; set; } /// - /// 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启,默认false。 > 关闭端口透传后,请求会转发给后端服务器protocol_port字段指定端口。 + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。关闭后,请求会转发给后端服务器protocol_port字段指定端口。取值:false不开启,true开启。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 /// [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? AnyPortEnable { get; set; } diff --git a/Services/Elb/V3/Model/Member.cs b/Services/Elb/V3/Model/Member.cs index c8bb547d6..09fa8c51e 100644 --- a/Services/Elb/V3/Model/Member.cs +++ b/Services/Elb/V3/Model/Member.cs @@ -34,12 +34,6 @@ public class Member [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] public string ProjectId { get; set; } - /// - /// 所在后端服务器组ID。 不支持该字段,请勿使用。 - /// - [JsonProperty("pool_id", NullValueHandling = NullValueHandling.Ignore)] - public string PoolId { get; set; } - /// /// 后端云服务器的管理状态。 取值:true、false。 虽然创建、更新请求支持该字段,但实际取值决定于后端云服务器对应的弹性云服务器是否存在。若存在,该值为true,否则,该值为false。 /// @@ -47,7 +41,7 @@ public class Member public bool? AdminStateUp { get; set; } /// - /// 后端云服务器所在子网的IPv4子网ID或IPv6子网ID。 若所属的LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 使用说明:该子网和关联的负载均衡器的子网必须在同一VPC下。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) /// [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string SubnetCidrId { get; set; } @@ -65,7 +59,7 @@ public class Member public int? Weight { get; set; } /// - /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] public string Address { get; set; } @@ -76,18 +70,6 @@ public class Member [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] public string IpVersion { get; set; } - /// - /// 设备所有者。 取值: - 空,表示后端服务器未关联到ECS。 - compute:{az_name},表示关联到ECS,其中{az_name}表示ECS所在可用区名。 不支持该字段,请勿使用。 - /// - [JsonProperty("device_owner", NullValueHandling = NullValueHandling.Ignore)] - public string DeviceOwner { get; set; } - - /// - /// 关联的ECS ID,为空表示后端服务器未关联到ECS。 不支持该字段,请勿使用。 - /// - [JsonProperty("device_id", NullValueHandling = NullValueHandling.Ignore)] - public string DeviceId { get; set; } - /// /// 后端云服务器的健康状态。当status非空时,以status字段中监听器粒度的健康检查状态优先。 取值: - ONLINE:后端云服务器正常。 - NO_MONITOR:后端云服务器所在的服务器组没有健康检查器。 - OFFLINE:后端云服务器关联的ECS服务器不存在或已关机。 /// @@ -101,25 +83,13 @@ public class Member public List Status { get; set; } /// - /// 所属负载均衡器ID。 不支持该字段,请勿使用。 - /// - [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] - public string LoadbalancerId { get; set; } - - /// - /// 后端云服务器关联的负载均衡器ID列表。 不支持该字段,请勿使用。 - /// - [JsonProperty("loadbalancers", NullValueHandling = NullValueHandling.Ignore)] - public List Loadbalancers { get; set; } - - /// - /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] public string CreatedAt { get; set; } /// - /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } @@ -148,19 +118,14 @@ public override string ToString() sb.Append(" id: ").Append(Id).Append("\n"); sb.Append(" name: ").Append(Name).Append("\n"); sb.Append(" projectId: ").Append(ProjectId).Append("\n"); - sb.Append(" poolId: ").Append(PoolId).Append("\n"); sb.Append(" adminStateUp: ").Append(AdminStateUp).Append("\n"); sb.Append(" subnetCidrId: ").Append(SubnetCidrId).Append("\n"); sb.Append(" protocolPort: ").Append(ProtocolPort).Append("\n"); sb.Append(" weight: ").Append(Weight).Append("\n"); sb.Append(" address: ").Append(Address).Append("\n"); sb.Append(" ipVersion: ").Append(IpVersion).Append("\n"); - sb.Append(" deviceOwner: ").Append(DeviceOwner).Append("\n"); - sb.Append(" deviceId: ").Append(DeviceId).Append("\n"); sb.Append(" operatingStatus: ").Append(OperatingStatus).Append("\n"); sb.Append(" status: ").Append(Status).Append("\n"); - sb.Append(" loadbalancerId: ").Append(LoadbalancerId).Append("\n"); - sb.Append(" loadbalancers: ").Append(Loadbalancers).Append("\n"); sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); sb.Append(" updatedAt: ").Append(UpdatedAt).Append("\n"); sb.Append(" memberType: ").Append(MemberType).Append("\n"); @@ -201,11 +166,6 @@ public bool Equals(Member input) (this.ProjectId != null && this.ProjectId.Equals(input.ProjectId)) ) && - ( - this.PoolId == input.PoolId || - (this.PoolId != null && - this.PoolId.Equals(input.PoolId)) - ) && ( this.AdminStateUp == input.AdminStateUp || (this.AdminStateUp != null && @@ -236,16 +196,6 @@ public bool Equals(Member input) (this.IpVersion != null && this.IpVersion.Equals(input.IpVersion)) ) && - ( - this.DeviceOwner == input.DeviceOwner || - (this.DeviceOwner != null && - this.DeviceOwner.Equals(input.DeviceOwner)) - ) && - ( - this.DeviceId == input.DeviceId || - (this.DeviceId != null && - this.DeviceId.Equals(input.DeviceId)) - ) && ( this.OperatingStatus == input.OperatingStatus || (this.OperatingStatus != null && @@ -257,17 +207,6 @@ public bool Equals(Member input) input.Status != null && this.Status.SequenceEqual(input.Status) ) && - ( - this.LoadbalancerId == input.LoadbalancerId || - (this.LoadbalancerId != null && - this.LoadbalancerId.Equals(input.LoadbalancerId)) - ) && - ( - this.Loadbalancers == input.Loadbalancers || - this.Loadbalancers != null && - input.Loadbalancers != null && - this.Loadbalancers.SequenceEqual(input.Loadbalancers) - ) && ( this.CreatedAt == input.CreatedAt || (this.CreatedAt != null && @@ -304,8 +243,6 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Name.GetHashCode(); if (this.ProjectId != null) hashCode = hashCode * 59 + this.ProjectId.GetHashCode(); - if (this.PoolId != null) - hashCode = hashCode * 59 + this.PoolId.GetHashCode(); if (this.AdminStateUp != null) hashCode = hashCode * 59 + this.AdminStateUp.GetHashCode(); if (this.SubnetCidrId != null) @@ -318,18 +255,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Address.GetHashCode(); if (this.IpVersion != null) hashCode = hashCode * 59 + this.IpVersion.GetHashCode(); - if (this.DeviceOwner != null) - hashCode = hashCode * 59 + this.DeviceOwner.GetHashCode(); - if (this.DeviceId != null) - hashCode = hashCode * 59 + this.DeviceId.GetHashCode(); if (this.OperatingStatus != null) hashCode = hashCode * 59 + this.OperatingStatus.GetHashCode(); if (this.Status != null) hashCode = hashCode * 59 + this.Status.GetHashCode(); - if (this.LoadbalancerId != null) - hashCode = hashCode * 59 + this.LoadbalancerId.GetHashCode(); - if (this.Loadbalancers != null) - hashCode = hashCode * 59 + this.Loadbalancers.GetHashCode(); if (this.CreatedAt != null) hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); if (this.UpdatedAt != null) diff --git a/Services/Elb/V3/Model/MemberInfo.cs b/Services/Elb/V3/Model/MemberInfo.cs new file mode 100644 index 000000000..a59387f1c --- /dev/null +++ b/Services/Elb/V3/Model/MemberInfo.cs @@ -0,0 +1,345 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 后端服务器信息。 + /// + public class MemberInfo + { + + /// + /// 后端服务器ID。 >说明: 此处并非ECS服务器的ID,而是ELB为绑定的后端服务器自动生成的member ID。 + /// + [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] + public string Id { get; set; } + + /// + /// 后端服务器名称。注意:该名称并非ECS名称。 + /// + [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] + public string Name { get; set; } + + /// + /// 后端服务器所在的项目ID。 + /// + [JsonProperty("project_id", NullValueHandling = NullValueHandling.Ignore)] + public string ProjectId { get; set; } + + /// + /// 所在后端服务器组ID。 不支持该字段,请勿使用。 + /// + [JsonProperty("pool_id", NullValueHandling = NullValueHandling.Ignore)] + public string PoolId { get; set; } + + /// + /// 后端云服务器的管理状态。 取值:true、false。 虽然创建、更新请求支持该字段,但实际取值决定于后端云服务器对应的弹性云服务器是否存在。若存在,该值为true,否则,该值为false。 + /// + [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] + public bool? AdminStateUp { get; set; } + + /// + /// 后端云服务器所在的子网,可以是IPv4或IPv6子网。若是IPv4子网,使用对应子网的子网ID(neutron_subnet_id);若是IPv6子网,使用对应子网的网络ID(neutron_network_id)。 ipv4子网的子网ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到 ipv6子网的网络ID可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到 使用说明: - 该子网和关联的负载均衡器的子网必须在同一VPC下。 - 若所属LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 [不支持IPv6,请勿设置为IPv6子网ID。](tag:dt,dt_test) + /// + [JsonProperty("subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] + public string SubnetCidrId { get; set; } + + /// + /// 后端服务器业务端口。 >在开启端口透传的pool下创建member传该字段不生效,可不传该字段。 + /// + [JsonProperty("protocol_port", NullValueHandling = NullValueHandling.Ignore)] + public int? ProtocolPort { get; set; } + + /// + /// 后端云服务器的权重,请求将根据pool配置的负载均衡算法和后端云服务器的权重进行负载分发。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 取值:0-100,默认1。 使用说明:若所在pool的lb_algorithm取值为SOURCE_IP,该字段无效。 + /// + [JsonProperty("weight", NullValueHandling = NullValueHandling.Ignore)] + public int? Weight { get; set; } + + /// + /// 后端服务器对应的IP地址。 使用说明: - 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 - 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是私网IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// + [JsonProperty("address", NullValueHandling = NullValueHandling.Ignore)] + public string Address { get; set; } + + /// + /// 当前后端服务器的IP地址版本,由后端系统自动根据传入的address字段确定。取值:v4、v6。 + /// + [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] + public string IpVersion { get; set; } + + /// + /// 设备所有者。 取值: - 空,表示后端服务器未关联到ECS。 - compute:{az_name},表示关联到ECS,其中{az_name}表示ECS所在可用区名。 - compute:subeni,表示辅助弹性网卡。 不支持该字段,请勿使用。 + /// + [JsonProperty("device_owner", NullValueHandling = NullValueHandling.Ignore)] + public string DeviceOwner { get; set; } + + /// + /// 关联的ECS ID,为空表示后端服务器未关联到ECS。 不支持该字段,请勿使用。 + /// + [JsonProperty("device_id", NullValueHandling = NullValueHandling.Ignore)] + public string DeviceId { get; set; } + + /// + /// 后端云服务器的健康状态。当status非空时,以status字段中监听器粒度的健康检查状态优先。 取值: - ONLINE:后端云服务器正常。 - NO_MONITOR:后端云服务器所在的服务器组没有健康检查器。 - OFFLINE:后端云服务器关联的ECS服务器不存在或已关机。 + /// + [JsonProperty("operating_status", NullValueHandling = NullValueHandling.Ignore)] + public string OperatingStatus { get; set; } + + /// + /// 后端云服务器监听器粒度的的健康状态。 若绑定的监听器在该字段中,则以该字段中监听器对应的operating_stauts为准。 若绑定的监听器不在该字段中,则以外层的operating_status为准。 + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public List Status { get; set; } + + /// + /// 所属负载均衡器ID。 不支持该字段,请勿使用。 + /// + [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] + public string LoadbalancerId { get; set; } + + /// + /// 后端云服务器关联的负载均衡器ID列表。 不支持该字段,请勿使用。 + /// + [JsonProperty("loadbalancers", NullValueHandling = NullValueHandling.Ignore)] + public List Loadbalancers { get; set; } + + /// + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] + public string CreatedAt { get; set; } + + /// + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) + /// + [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] + public string UpdatedAt { get; set; } + + /// + /// 后端云服务器的类型。 取值: - ip:跨VPC的member。 - instance:关联到ECS的member。 + /// + [JsonProperty("member_type", NullValueHandling = NullValueHandling.Ignore)] + public string MemberType { get; set; } + + /// + /// member关联的实例ID。空表示member关联的实例为非真实设备 (如:跨VPC场景) + /// + [JsonProperty("instance_id", NullValueHandling = NullValueHandling.Ignore)] + public string InstanceId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class MemberInfo {\n"); + sb.Append(" id: ").Append(Id).Append("\n"); + sb.Append(" name: ").Append(Name).Append("\n"); + sb.Append(" projectId: ").Append(ProjectId).Append("\n"); + sb.Append(" poolId: ").Append(PoolId).Append("\n"); + sb.Append(" adminStateUp: ").Append(AdminStateUp).Append("\n"); + sb.Append(" subnetCidrId: ").Append(SubnetCidrId).Append("\n"); + sb.Append(" protocolPort: ").Append(ProtocolPort).Append("\n"); + sb.Append(" weight: ").Append(Weight).Append("\n"); + sb.Append(" address: ").Append(Address).Append("\n"); + sb.Append(" ipVersion: ").Append(IpVersion).Append("\n"); + sb.Append(" deviceOwner: ").Append(DeviceOwner).Append("\n"); + sb.Append(" deviceId: ").Append(DeviceId).Append("\n"); + sb.Append(" operatingStatus: ").Append(OperatingStatus).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" loadbalancerId: ").Append(LoadbalancerId).Append("\n"); + sb.Append(" loadbalancers: ").Append(Loadbalancers).Append("\n"); + sb.Append(" createdAt: ").Append(CreatedAt).Append("\n"); + sb.Append(" updatedAt: ").Append(UpdatedAt).Append("\n"); + sb.Append(" memberType: ").Append(MemberType).Append("\n"); + sb.Append(" instanceId: ").Append(InstanceId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as MemberInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(MemberInfo input) + { + if (input == null) + return false; + + return + ( + this.Id == input.Id || + (this.Id != null && + this.Id.Equals(input.Id)) + ) && + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.ProjectId == input.ProjectId || + (this.ProjectId != null && + this.ProjectId.Equals(input.ProjectId)) + ) && + ( + this.PoolId == input.PoolId || + (this.PoolId != null && + this.PoolId.Equals(input.PoolId)) + ) && + ( + this.AdminStateUp == input.AdminStateUp || + (this.AdminStateUp != null && + this.AdminStateUp.Equals(input.AdminStateUp)) + ) && + ( + this.SubnetCidrId == input.SubnetCidrId || + (this.SubnetCidrId != null && + this.SubnetCidrId.Equals(input.SubnetCidrId)) + ) && + ( + this.ProtocolPort == input.ProtocolPort || + (this.ProtocolPort != null && + this.ProtocolPort.Equals(input.ProtocolPort)) + ) && + ( + this.Weight == input.Weight || + (this.Weight != null && + this.Weight.Equals(input.Weight)) + ) && + ( + this.Address == input.Address || + (this.Address != null && + this.Address.Equals(input.Address)) + ) && + ( + this.IpVersion == input.IpVersion || + (this.IpVersion != null && + this.IpVersion.Equals(input.IpVersion)) + ) && + ( + this.DeviceOwner == input.DeviceOwner || + (this.DeviceOwner != null && + this.DeviceOwner.Equals(input.DeviceOwner)) + ) && + ( + this.DeviceId == input.DeviceId || + (this.DeviceId != null && + this.DeviceId.Equals(input.DeviceId)) + ) && + ( + this.OperatingStatus == input.OperatingStatus || + (this.OperatingStatus != null && + this.OperatingStatus.Equals(input.OperatingStatus)) + ) && + ( + this.Status == input.Status || + this.Status != null && + input.Status != null && + this.Status.SequenceEqual(input.Status) + ) && + ( + this.LoadbalancerId == input.LoadbalancerId || + (this.LoadbalancerId != null && + this.LoadbalancerId.Equals(input.LoadbalancerId)) + ) && + ( + this.Loadbalancers == input.Loadbalancers || + this.Loadbalancers != null && + input.Loadbalancers != null && + this.Loadbalancers.SequenceEqual(input.Loadbalancers) + ) && + ( + this.CreatedAt == input.CreatedAt || + (this.CreatedAt != null && + this.CreatedAt.Equals(input.CreatedAt)) + ) && + ( + this.UpdatedAt == input.UpdatedAt || + (this.UpdatedAt != null && + this.UpdatedAt.Equals(input.UpdatedAt)) + ) && + ( + this.MemberType == input.MemberType || + (this.MemberType != null && + this.MemberType.Equals(input.MemberType)) + ) && + ( + this.InstanceId == input.InstanceId || + (this.InstanceId != null && + this.InstanceId.Equals(input.InstanceId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Id != null) + hashCode = hashCode * 59 + this.Id.GetHashCode(); + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.ProjectId != null) + hashCode = hashCode * 59 + this.ProjectId.GetHashCode(); + if (this.PoolId != null) + hashCode = hashCode * 59 + this.PoolId.GetHashCode(); + if (this.AdminStateUp != null) + hashCode = hashCode * 59 + this.AdminStateUp.GetHashCode(); + if (this.SubnetCidrId != null) + hashCode = hashCode * 59 + this.SubnetCidrId.GetHashCode(); + if (this.ProtocolPort != null) + hashCode = hashCode * 59 + this.ProtocolPort.GetHashCode(); + if (this.Weight != null) + hashCode = hashCode * 59 + this.Weight.GetHashCode(); + if (this.Address != null) + hashCode = hashCode * 59 + this.Address.GetHashCode(); + if (this.IpVersion != null) + hashCode = hashCode * 59 + this.IpVersion.GetHashCode(); + if (this.DeviceOwner != null) + hashCode = hashCode * 59 + this.DeviceOwner.GetHashCode(); + if (this.DeviceId != null) + hashCode = hashCode * 59 + this.DeviceId.GetHashCode(); + if (this.OperatingStatus != null) + hashCode = hashCode * 59 + this.OperatingStatus.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.LoadbalancerId != null) + hashCode = hashCode * 59 + this.LoadbalancerId.GetHashCode(); + if (this.Loadbalancers != null) + hashCode = hashCode * 59 + this.Loadbalancers.GetHashCode(); + if (this.CreatedAt != null) + hashCode = hashCode * 59 + this.CreatedAt.GetHashCode(); + if (this.UpdatedAt != null) + hashCode = hashCode * 59 + this.UpdatedAt.GetHashCode(); + if (this.MemberType != null) + hashCode = hashCode * 59 + this.MemberType.GetHashCode(); + if (this.InstanceId != null) + hashCode = hashCode * 59 + this.InstanceId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/PageInfo.cs b/Services/Elb/V3/Model/PageInfo.cs index 1e9494d51..059efca7b 100644 --- a/Services/Elb/V3/Model/PageInfo.cs +++ b/Services/Elb/V3/Model/PageInfo.cs @@ -17,19 +17,19 @@ public class PageInfo { /// - /// 分页查询结果中第一条记录的ID。通常用于配合page_reverse=true查询上一页。 + /// 参数解释:分页查询结果中第一条记录的ID。通常用于配合page_reverse=true查询上一页。 /// [JsonProperty("previous_marker", NullValueHandling = NullValueHandling.Ignore)] public string PreviousMarker { get; set; } /// - /// 分页查询结果中最后一条记录的ID。通常用于查询下一页。 + /// 参数解释:分页查询结果中最后一条记录的ID。通常用于查询下一页。 /// [JsonProperty("next_marker", NullValueHandling = NullValueHandling.Ignore)] public string NextMarker { get; set; } /// - /// 当前的记录数。 + /// 参数解释:当前的记录数。 /// [JsonProperty("current_count", NullValueHandling = NullValueHandling.Ignore)] public int? CurrentCount { get; set; } diff --git a/Services/Elb/V3/Model/Pool.cs b/Services/Elb/V3/Model/Pool.cs index 6f96769c5..6a108a708 100644 --- a/Services/Elb/V3/Model/Pool.cs +++ b/Services/Elb/V3/Model/Pool.cs @@ -132,7 +132,7 @@ public bool Equals(ProtectionStatusEnum obj) /// - /// 后端云服务器组的管理状态,只支持设置为true。 不支持该字段,请勿使用。 + /// 后端云服务器组的管理状态。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -156,7 +156,7 @@ public bool Equals(ProtectionStatusEnum obj) public string Id { get; set; } /// - /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID算法。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) + /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 [- 2_TUPLE_HASH:二元组hash算法,仅IP类型的pool支持。 - 3_TUPLE_HASH:三元组hash算法,仅IP类型的pool支持。 - 4_TUPLE_HASH:五元组hash算法,仅IP类型的pool支持。](tag:hws_eu) 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID算法。](tag:hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) /// [JsonProperty("lb_algorithm", NullValueHandling = NullValueHandling.Ignore)] public string LbAlgorithm { get; set; } @@ -192,7 +192,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProjectId { get; set; } /// - /// 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS、QUIC和TCPSSL。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC; - listener的protocol为TCP时pool的protocol必须为TCP; - listener的protocol为HTTP时,pool的protocol必须为HTTP。 - listener的protocol为HTTPS时,pool的protocol必须为HTTP或HTTPS。 - listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 后端云服务器组的后端协议。 取值:TCP、UDP、[IP、](tag:hws_eu)TLS、GRPC、HTTP、HTTPS和QUIC。 使用说明: - listener的protocol为UDP时,pool的protocol必须为UDP或QUIC。 - listener的protocol为TCP时pool的protocol必须为TCP。 [- listener的protocol为IP时,pool的protocol必须为IP。](tag:hws_eu) - listener的protocol为HTTP时,pool的protocol必须为HTTP。 - listener的protocol为HTTPS时,pool的protocol必须为HTTP、HTTPS或GRPC。 - listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 - listener的protocol为QUIC时,pool的protocol必须为HTTP、HTTPS或GRPC。 - listener的protocol为TLS时,pool的protocol必须为TLS或TCP。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 - 若pool的protocol为GRPC,关联监听器必须开启HTTP2。 - 若pool的protocol为TCP,则pool的ip_version字段取值必须是4。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] public string Protocol { get; set; } @@ -204,7 +204,7 @@ public bool Equals(ProtectionStatusEnum obj) public SessionPersistence SessionPersistence { get; set; } /// - /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) + /// 后端云服务器组支持的IP版本。 [取值: - 共享型:固定为v4; - 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs) [取值:dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。](tag:hcso_dt) [不支持IPv6,只会返回v4。](tag:dt,dt_test) /// [JsonProperty("ip_version", NullValueHandling = NullValueHandling.Ignore)] public string IpVersion { get; set; } @@ -216,19 +216,19 @@ public bool Equals(ProtectionStatusEnum obj) public SlowStart SlowStart { get; set; } /// - /// 是否开启误删保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启误删保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("member_deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? MemberDeletionProtectionEnable { get; set; } /// - /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("created_at", NullValueHandling = NullValueHandling.Ignore)] public string CreatedAt { get; set; } /// - /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) + /// 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 [注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) /// [JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)] public string UpdatedAt { get; set; } @@ -257,7 +257,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启,默认false。 > 关闭端口透传后,请求会转发给后端服务器protocol_port字段指定端口。 + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。关闭后,请求会转发给后端服务器protocol_port字段指定端口。取值:false不开启,true开启。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 /// [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? AnyPortEnable { get; set; } @@ -268,6 +268,24 @@ public bool Equals(ProtectionStatusEnum obj) [JsonProperty("connection_drain", NullValueHandling = NullValueHandling.Ignore)] public ConnectionDrain ConnectionDrain { get; set; } + /// + /// IP地址组所在的企业项目ID。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) + /// + [JsonProperty("enterprise_project_id", NullValueHandling = NullValueHandling.Ignore)] + public string EnterpriseProjectId { get; set; } + + /// + /// + /// + [JsonProperty("pool_health", NullValueHandling = NullValueHandling.Ignore)] + public PoolHealth PoolHealth { get; set; } + + /// + /// 可用区组,如:center + /// + [JsonProperty("public_border_group", NullValueHandling = NullValueHandling.Ignore)] + public string PublicBorderGroup { get; set; } + /// @@ -300,6 +318,9 @@ public override string ToString() sb.Append(" protectionReason: ").Append(ProtectionReason).Append("\n"); sb.Append(" anyPortEnable: ").Append(AnyPortEnable).Append("\n"); sb.Append(" connectionDrain: ").Append(ConnectionDrain).Append("\n"); + sb.Append(" enterpriseProjectId: ").Append(EnterpriseProjectId).Append("\n"); + sb.Append(" poolHealth: ").Append(PoolHealth).Append("\n"); + sb.Append(" publicBorderGroup: ").Append(PublicBorderGroup).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -438,6 +459,21 @@ public bool Equals(Pool input) this.ConnectionDrain == input.ConnectionDrain || (this.ConnectionDrain != null && this.ConnectionDrain.Equals(input.ConnectionDrain)) + ) && + ( + this.EnterpriseProjectId == input.EnterpriseProjectId || + (this.EnterpriseProjectId != null && + this.EnterpriseProjectId.Equals(input.EnterpriseProjectId)) + ) && + ( + this.PoolHealth == input.PoolHealth || + (this.PoolHealth != null && + this.PoolHealth.Equals(input.PoolHealth)) + ) && + ( + this.PublicBorderGroup == input.PublicBorderGroup || + (this.PublicBorderGroup != null && + this.PublicBorderGroup.Equals(input.PublicBorderGroup)) ); } @@ -495,6 +531,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.AnyPortEnable.GetHashCode(); if (this.ConnectionDrain != null) hashCode = hashCode * 59 + this.ConnectionDrain.GetHashCode(); + if (this.EnterpriseProjectId != null) + hashCode = hashCode * 59 + this.EnterpriseProjectId.GetHashCode(); + if (this.PoolHealth != null) + hashCode = hashCode * 59 + this.PoolHealth.GetHashCode(); + if (this.PublicBorderGroup != null) + hashCode = hashCode * 59 + this.PublicBorderGroup.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/PoolHealth.cs b/Services/Elb/V3/Model/PoolHealth.cs new file mode 100644 index 000000000..d499e2fcf --- /dev/null +++ b/Services/Elb/V3/Model/PoolHealth.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 后端全下线转发配置 + /// + public class PoolHealth + { + + /// + /// 当健康检查在线的member个数小于该个数,判定pool的state为不健康; 取值范围:0或者1; 0:默认值,不生效; 1:全下线转发生效; + /// + [JsonProperty("minimum_healthy_member_count", NullValueHandling = NullValueHandling.Ignore)] + public int? MinimumHealthyMemberCount { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PoolHealth {\n"); + sb.Append(" minimumHealthyMemberCount: ").Append(MinimumHealthyMemberCount).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as PoolHealth); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(PoolHealth input) + { + if (input == null) + return false; + + return + ( + this.MinimumHealthyMemberCount == input.MinimumHealthyMemberCount || + (this.MinimumHealthyMemberCount != null && + this.MinimumHealthyMemberCount.Equals(input.MinimumHealthyMemberCount)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.MinimumHealthyMemberCount != null) + hashCode = hashCode * 59 + this.MinimumHealthyMemberCount.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/PrepaidCreateOption.cs b/Services/Elb/V3/Model/PrepaidCreateOption.cs index 5b3e9e162..df4866488 100644 --- a/Services/Elb/V3/Model/PrepaidCreateOption.cs +++ b/Services/Elb/V3/Model/PrepaidCreateOption.cs @@ -11,14 +11,14 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 创建负载均衡器的包周期信息,若传入该结构体,则创建包周期的LB。 [不支持该字段,请勿使用](tag:dt,dt_test,hcso_dt) + /// 创建负载均衡器实例的预付费计费配置,若传入该结构体,则创建预付费类型的负载均衡器实例。 [不支持该字段,请勿使用](tag:dt,dt_test,hcso_dt) /// public class PrepaidCreateOption { /// - /// 订购周期类型,当前支持包月和包年: month:月; year:年; + /// 参数解释:预付费实例的订购周期类型,当前支持月和年。 取值范围: - month:月。 - year:年。 /// - /// 订购周期类型,当前支持包月和包年: month:月; year:年; + /// 参数解释:预付费实例的订购周期类型,当前支持月和年。 取值范围: - month:月。 - year:年。 [JsonConverter(typeof(EnumClassConverter))] public class PeriodTypeEnum { @@ -132,24 +132,24 @@ public bool Equals(PeriodTypeEnum obj) /// - /// 订购周期类型,当前支持包月和包年: month:月; year:年; + /// 参数解释:预付费实例的订购周期类型,当前支持月和年。 取值范围: - month:月。 - year:年。 /// [JsonProperty("period_type", NullValueHandling = NullValueHandling.Ignore)] public PeriodTypeEnum PeriodType { get; set; } /// - /// 订购周期数,取值会随运营策略变化。 period_type为month时,为[1,9], period_type为year时,为[1,3] + /// 参数解释:预付费实例的订购周期数,取值会随运营策略变化。 约束限制: - period_type为month时,为[1,9]。 - period_type为year时,为[1,3]。 /// [JsonProperty("period_num", NullValueHandling = NullValueHandling.Ignore)] public int? PeriodNum { get; set; } /// - /// 是否自动续订; true:自动续订 false:不自动续订 + /// 参数解释:自动续订开关。 取值范围: - true:开启自动续订。 - false:关闭自动续订。 /// [JsonProperty("auto_renew", NullValueHandling = NullValueHandling.Ignore)] public bool? AutoRenew { get; set; } /// - /// 下单订购后,是否自动从客户的账户中支付; true:自动支付; false:不自动支付。 自动支付时,只能使用账户的现金支付;如果要使用代金券,请选择不自动支付,然后在用户费用中心,选择代金券支付。 + /// 参数解释:自动支付开关。下单订购后,是否自动从客户的账户中支付。 约束限制:开启自动支付时,只能使用账户的现金支付;如果要使用代金券,请选择关闭自动支付,然后在用户费用中心,选择代金券支付。 取值范围: - true:开启自动支付。 - false:关闭自动支付。 /// [JsonProperty("auto_pay", NullValueHandling = NullValueHandling.Ignore)] public bool? AutoPay { get; set; } diff --git a/Services/Elb/V3/Model/Quota.cs b/Services/Elb/V3/Model/Quota.cs index 79c3f206a..0911bb3fb 100644 --- a/Services/Elb/V3/Model/Quota.cs +++ b/Services/Elb/V3/Model/Quota.cs @@ -47,7 +47,7 @@ public class Quota public int? L7policy { get; set; } /// - /// 转发策略配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 + /// 单个转发策略下所有转发规则的condition总数配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 /// [JsonProperty("condition_per_policy", NullValueHandling = NullValueHandling.Ignore)] public int? ConditionPerPolicy { get; set; } @@ -77,7 +77,7 @@ public class Quota public int? MembersPerPool { get; set; } /// - /// 单个pool下的member的配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 + /// 单个监听器下的pool的配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 /// [JsonProperty("listeners_per_pool", NullValueHandling = NullValueHandling.Ignore)] public int? ListenersPerPool { get; set; } @@ -89,13 +89,13 @@ public class Quota public int? Ipgroup { get; set; } /// - /// IP地址组配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 [不支持该字段,请勿使用。](tag:hcso_dt) + /// 单个IP地址组可以关联的监听器数量配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 [不支持该字段,请勿使用。](tag:hcso_dt) /// [JsonProperty("ipgroup_bindings", NullValueHandling = NullValueHandling.Ignore)] public int? IpgroupBindings { get; set; } /// - /// IP地址组配额。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 [不支持该字段,请勿使用。](tag:hcso_dt) + /// 单个监听器下关联的所有IP地址组的ip列表中的IP总数不能超过ipgroup_max_length。 取值: - 大于等于0:表示当前配额数量。 - -1:表示无配额限制。 [不支持该字段,请勿使用。](tag:hcso_dt) /// [JsonProperty("ipgroup_max_length", NullValueHandling = NullValueHandling.Ignore)] public int? IpgroupMaxLength { get; set; } diff --git a/Services/Elb/V3/Model/QuotaInfo.cs b/Services/Elb/V3/Model/QuotaInfo.cs index 8df88f7bf..20f0f3f41 100644 --- a/Services/Elb/V3/Model/QuotaInfo.cs +++ b/Services/Elb/V3/Model/QuotaInfo.cs @@ -17,7 +17,7 @@ public class QuotaInfo { /// - /// 资源类型。 取值:loadbalancer、listener、ipgroup、pool、member、members_per_pool、 healthmonitor、l7policy、certificate、security_policy、condition_per_policy、listeners_per_pool、ipgroup_bindings、ipgroup_max_length。 其中members_per_pool表示一个pool下最多可关联的member数量。 + /// 资源类型。 取值:loadbalancer、listener、ipgroup、pool、member、healthmonitor、l7policy、certificate、security_policy、listeners_per_loadbalancer、listeners_per_pool、members_per_pool、condition_per_policy、ipgroup_bindings、ipgroup_max_length。 /// [JsonProperty("quota_key", NullValueHandling = NullValueHandling.Ignore)] public string QuotaKey { get; set; } diff --git a/Services/Elb/V3/Model/RedirectPoolsConfig.cs b/Services/Elb/V3/Model/RedirectPoolsConfig.cs new file mode 100644 index 000000000..8a347fecd --- /dev/null +++ b/Services/Elb/V3/Model/RedirectPoolsConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略主机组的权重配置。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 使用说明: - 当action为REDIRECT_TO_POOL时,redirect_pool_id和redirect_pools_config必须指定一个,两个都指定时按redirect_pools_config生效。 - 当action是REDIRECT_TO_LISTENER和REzDIRECT_TO_URL时,传入该字段会报错。 - 一个policy最多支持配置5个pool。Pool不允许重复。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class RedirectPoolsConfig + { + + /// + /// 所在后端服务器组ID。 + /// + [JsonProperty("pool_id", NullValueHandling = NullValueHandling.Ignore)] + public string PoolId { get; set; } + + /// + /// 转发策略主机组的权重,范围为[0,100], 请求将根据该权重进行负载分发到不同的主机组。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 + /// + [JsonProperty("weight", NullValueHandling = NullValueHandling.Ignore)] + public int? Weight { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RedirectPoolsConfig {\n"); + sb.Append(" poolId: ").Append(PoolId).Append("\n"); + sb.Append(" weight: ").Append(Weight).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RedirectPoolsConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RedirectPoolsConfig input) + { + if (input == null) + return false; + + return + ( + this.PoolId == input.PoolId || + (this.PoolId != null && + this.PoolId.Equals(input.PoolId)) + ) && + ( + this.Weight == input.Weight || + (this.Weight != null && + this.Weight.Equals(input.Weight)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PoolId != null) + hashCode = hashCode * 59 + this.PoolId.GetHashCode(); + if (this.Weight != null) + hashCode = hashCode * 59 + this.Weight.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/RedirectPoolsExtendConfig.cs b/Services/Elb/V3/Model/RedirectPoolsExtendConfig.cs index 8a6db54d3..b8cca0f20 100644 --- a/Services/Elb/V3/Model/RedirectPoolsExtendConfig.cs +++ b/Services/Elb/V3/Model/RedirectPoolsExtendConfig.cs @@ -17,7 +17,7 @@ public class RedirectPoolsExtendConfig { /// - /// 是否开启url重定向 + /// 是否开启url重定向。 /// [JsonProperty("rewrite_url_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? RewriteUrlEnable { get; set; } @@ -28,6 +28,24 @@ public class RedirectPoolsExtendConfig [JsonProperty("rewrite_url_config", NullValueHandling = NullValueHandling.Ignore)] public RewriteUrlConfig RewriteUrlConfig { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public InsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public RemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public TrafficLimitConfig TrafficLimitConfig { get; set; } + /// @@ -39,6 +57,9 @@ public override string ToString() sb.Append("class RedirectPoolsExtendConfig {\n"); sb.Append(" rewriteUrlEnable: ").Append(RewriteUrlEnable).Append("\n"); sb.Append(" rewriteUrlConfig: ").Append(RewriteUrlConfig).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -69,6 +90,21 @@ public bool Equals(RedirectPoolsExtendConfig input) this.RewriteUrlConfig == input.RewriteUrlConfig || (this.RewriteUrlConfig != null && this.RewriteUrlConfig.Equals(input.RewriteUrlConfig)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -84,6 +120,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.RewriteUrlEnable.GetHashCode(); if (this.RewriteUrlConfig != null) hashCode = hashCode * 59 + this.RewriteUrlConfig.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/RedirectPoolsStickySessionConfig.cs b/Services/Elb/V3/Model/RedirectPoolsStickySessionConfig.cs new file mode 100644 index 000000000..9e87c2c4a --- /dev/null +++ b/Services/Elb/V3/Model/RedirectPoolsStickySessionConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 配置转发策略关联的服务器组之间会话保持。负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个pool处理。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class RedirectPoolsStickySessionConfig + { + + /// + /// 转发策略主机组会话保持开启的开关。 默认值为false,表示关闭主机组会话保持。 + /// + [JsonProperty("enable", NullValueHandling = NullValueHandling.Ignore)] + public bool? Enable { get; set; } + + /// + /// 会话保持的时间。 适用范围:范围为[1,1440](分钟),默认值1440。 [荷兰region不支持QUIC。](tag:dt,dt_test) + /// + [JsonProperty("timeout", NullValueHandling = NullValueHandling.Ignore)] + public int? Timeout { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RedirectPoolsStickySessionConfig {\n"); + sb.Append(" enable: ").Append(Enable).Append("\n"); + sb.Append(" timeout: ").Append(Timeout).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RedirectPoolsStickySessionConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RedirectPoolsStickySessionConfig input) + { + if (input == null) + return false; + + return + ( + this.Enable == input.Enable || + (this.Enable != null && + this.Enable.Equals(input.Enable)) + ) && + ( + this.Timeout == input.Timeout || + (this.Timeout != null && + this.Timeout.Equals(input.Timeout)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Enable != null) + hashCode = hashCode * 59 + this.Enable.GetHashCode(); + if (this.Timeout != null) + hashCode = hashCode * 59 + this.Timeout.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/RedirectUrlConfig.cs b/Services/Elb/V3/Model/RedirectUrlConfig.cs index b9822c35b..971d826e0 100644 --- a/Services/Elb/V3/Model/RedirectUrlConfig.cs +++ b/Services/Elb/V3/Model/RedirectUrlConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class RedirectUrlConfig { @@ -304,6 +304,18 @@ public bool Equals(StatusCodeEnum obj) /// [JsonProperty("status_code", NullValueHandling = NullValueHandling.Ignore)] public StatusCodeEnum StatusCode { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public InsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public RemoveHeadersConfig RemoveHeadersConfig { get; set; } + /// @@ -319,6 +331,8 @@ public override string ToString() sb.Append(" path: ").Append(Path).Append("\n"); sb.Append(" query: ").Append(Query).Append("\n"); sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -369,6 +383,16 @@ public bool Equals(RedirectUrlConfig input) this.StatusCode == input.StatusCode || (this.StatusCode != null && this.StatusCode.Equals(input.StatusCode)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) ); } @@ -392,6 +416,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Query.GetHashCode(); if (this.StatusCode != null) hashCode = hashCode * 59 + this.StatusCode.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/RemoveHeaderConfig.cs b/Services/Elb/V3/Model/RemoveHeaderConfig.cs new file mode 100644 index 000000000..feed588ad --- /dev/null +++ b/Services/Elb/V3/Model/RemoveHeaderConfig.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数。 + /// + public class RemoveHeaderConfig + { + + /// + /// 被移除的请求头的参数名。取值范围: 1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 不能移除以下请求头参数: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RemoveHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RemoveHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RemoveHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/RemoveHeadersConfig.cs b/Services/Elb/V3/Model/RemoveHeadersConfig.cs new file mode 100644 index 000000000..dc2d4980e --- /dev/null +++ b/Services/Elb/V3/Model/RemoveHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数列表。 + /// + public class RemoveHeadersConfig + { + + /// + /// 要移除的请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class RemoveHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as RemoveHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(RemoveHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/RewriteUrlConfig.cs b/Services/Elb/V3/Model/RewriteUrlConfig.cs index 24993b165..597abd06d 100644 --- a/Services/Elb/V3/Model/RewriteUrlConfig.cs +++ b/Services/Elb/V3/Model/RewriteUrlConfig.cs @@ -11,25 +11,25 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 转发到的后端主机组的URL配置。rewrite_url_enable为true时,改字段有效。 + /// URL重定向配置。当action为REDIRECT_TO_POOL的时候生效。 /// public class RewriteUrlConfig { /// - /// url host + /// 重定向的域名。取值只能包含英文字母、数字、“-”、“.”,必须以字母、数字开头。 默认值${host},表示继承原值(即与被重写请求host保持一致)。 /// [JsonProperty("host", NullValueHandling = NullValueHandling.Ignore)] public string Host { get; set; } /// - /// url路径 + /// 重定向的请求路径。 取值只能包含英文字母、数字、_~';@^-%#&$.+?,=!:|/(),且必须以\"/\"开头。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认值${path}表示继承原值(即与被重写请求保持一致)。 /// [JsonProperty("path", NullValueHandling = NullValueHandling.Ignore)] public string Path { get; set; } /// - /// url查询字符串 + /// 重定向的查询字符串。取值只能包含英文字母、数字和特殊字符:!$&'()+,-./:;=?@^_`。字母区分大小写。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认${query},表示继承原值(即与被重写请求保持一致)。 /// [JsonProperty("query", NullValueHandling = NullValueHandling.Ignore)] public string Query { get; set; } diff --git a/Services/Elb/V3/Model/SessionPersistence.cs b/Services/Elb/V3/Model/SessionPersistence.cs index bc1307624..844d8fd1d 100644 --- a/Services/Elb/V3/Model/SessionPersistence.cs +++ b/Services/Elb/V3/Model/SessionPersistence.cs @@ -17,13 +17,13 @@ public class SessionPersistence { /// - /// cookie名称。 [共享型LB,支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 独享型LB,支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws_eu,hcso_dt) 使用说明: - 只有当type为APP_COOKIE时才有效。其他情况下传该字段会报错。 [不支持该字段,请勿使用。](tag:hws_eu,hcso_dt) + /// cookie名称。 [共享型LB,支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 独享型LB,支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws_eu,hcso_dt) 使用说明: - 只有当type为APP_COOKIE时才有效。其他情况下传该字段会报错。 [不支持该字段,请勿使用。](tag:hws_eu,hcso_dt) /// [JsonProperty("cookie_name", NullValueHandling = NullValueHandling.Ignore)] public string CookieName { get; set; } /// - /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。如果是独享型负载均衡器的pool, 则type只能为HTTP_COOKIE,其他取值会话保持失效。 如果是共享型负载均衡器的pool,则type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) [不支持QUIC。](tag:tm) + /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。如果是独享型负载均衡器的pool, 则type只能为HTTP_COOKIE,其他取值会话保持失效。 如果是共享型负载均衡器的pool,则type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) [不支持QUIC。](tag:tm) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } diff --git a/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoRequest.cs b/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoRequest.cs new file mode 100644 index 000000000..7fcc0d1bc --- /dev/null +++ b/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoRequest.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// Request Object + /// + public class ShowCertificatePrivateKeyEchoRequest + { + + + + } +} diff --git a/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoResponse.cs b/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoResponse.cs new file mode 100644 index 000000000..99f93e075 --- /dev/null +++ b/Services/Elb/V3/Model/ShowCertificatePrivateKeyEchoResponse.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// Response Object + /// + public class ShowCertificatePrivateKeyEchoResponse : SdkResponse + { + + /// + /// 请求ID。 注:自动生成 。 + /// + [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] + public string RequestId { get; set; } + + /// + /// 证书回显开关,项目粒度的,默认情况下,\"private_key_echo\"是true,证书的返回体中展示私钥。 当值为false时,证书的返回体中不展示私钥。 + /// + [JsonProperty("private_key_echo", NullValueHandling = NullValueHandling.Ignore)] + public bool? PrivateKeyEcho { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShowCertificatePrivateKeyEchoResponse {\n"); + sb.Append(" requestId: ").Append(RequestId).Append("\n"); + sb.Append(" privateKeyEcho: ").Append(PrivateKeyEcho).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ShowCertificatePrivateKeyEchoResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ShowCertificatePrivateKeyEchoResponse input) + { + if (input == null) + return false; + + return + ( + this.RequestId == input.RequestId || + (this.RequestId != null && + this.RequestId.Equals(input.RequestId)) + ) && + ( + this.PrivateKeyEcho == input.PrivateKeyEcho || + (this.PrivateKeyEcho != null && + this.PrivateKeyEcho.Equals(input.PrivateKeyEcho)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.RequestId != null) + hashCode = hashCode * 59 + this.RequestId.GetHashCode(); + if (this.PrivateKeyEcho != null) + hashCode = hashCode * 59 + this.PrivateKeyEcho.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/ShowFlavorRequest.cs b/Services/Elb/V3/Model/ShowFlavorRequest.cs index 40fb3e871..51d12cbff 100644 --- a/Services/Elb/V3/Model/ShowFlavorRequest.cs +++ b/Services/Elb/V3/Model/ShowFlavorRequest.cs @@ -17,7 +17,7 @@ public class ShowFlavorRequest { /// - /// 规格ID。 + /// 参数解释:规格ID。 /// [SDKProperty("flavor_id", IsPath = true)] [JsonProperty("flavor_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ShowFlavorResponse.cs b/Services/Elb/V3/Model/ShowFlavorResponse.cs index 81b2916cc..ddf0caf59 100644 --- a/Services/Elb/V3/Model/ShowFlavorResponse.cs +++ b/Services/Elb/V3/Model/ShowFlavorResponse.cs @@ -17,7 +17,7 @@ public class ShowFlavorResponse : SdkResponse { /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/ShowIpGroupRequest.cs b/Services/Elb/V3/Model/ShowIpGroupRequest.cs index c13bfdedd..8dea59bb7 100644 --- a/Services/Elb/V3/Model/ShowIpGroupRequest.cs +++ b/Services/Elb/V3/Model/ShowIpGroupRequest.cs @@ -17,7 +17,7 @@ public class ShowIpGroupRequest { /// - /// IP地址组ID。 + /// 参数解释:IP地址组ID。 /// [SDKProperty("ipgroup_id", IsPath = true)] [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/ShowIpGroupResponse.cs b/Services/Elb/V3/Model/ShowIpGroupResponse.cs index 2c64d9cb4..06a2a23fc 100644 --- a/Services/Elb/V3/Model/ShowIpGroupResponse.cs +++ b/Services/Elb/V3/Model/ShowIpGroupResponse.cs @@ -23,7 +23,7 @@ public class ShowIpGroupResponse : SdkResponse public IpGroup Ipgroup { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/SlowStart.cs b/Services/Elb/V3/Model/SlowStart.cs index bdb734416..aa72e07b7 100644 --- a/Services/Elb/V3/Model/SlowStart.cs +++ b/Services/Elb/V3/Model/SlowStart.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class SlowStart { diff --git a/Services/Elb/V3/Model/TrafficLimitConfig.cs b/Services/Elb/V3/Model/TrafficLimitConfig.cs new file mode 100644 index 000000000..5742a94f5 --- /dev/null +++ b/Services/Elb/V3/Model/TrafficLimitConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略限速的配置。 + /// + public class TrafficLimitConfig + { + + /// + /// 转发策略整体限速。取值: 0-100000s。0表示不限速 + /// + [JsonProperty("qps", NullValueHandling = NullValueHandling.Ignore)] + public int? Qps { get; set; } + + /// + /// 对转发策略单源进行限速。 quic监听器下转发策略不支持配置单源限速,指定该字段时,赋值可以为0或者为null 取值: 0-100000s。0表示不限速,如果qps不为0,per_ip_qps需要小于qps。 + /// + [JsonProperty("per_source_ip_qps", NullValueHandling = NullValueHandling.Ignore)] + public int? PerSourceIpQps { get; set; } + + /// + /// 对转发策略单源进行限速。取值: 0-100000s。当qps超限的时候,不返回503,支持允许局部突增burst大小的请求。 + /// + [JsonProperty("burst", NullValueHandling = NullValueHandling.Ignore)] + public int? Burst { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class TrafficLimitConfig {\n"); + sb.Append(" qps: ").Append(Qps).Append("\n"); + sb.Append(" perSourceIpQps: ").Append(PerSourceIpQps).Append("\n"); + sb.Append(" burst: ").Append(Burst).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as TrafficLimitConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(TrafficLimitConfig input) + { + if (input == null) + return false; + + return + ( + this.Qps == input.Qps || + (this.Qps != null && + this.Qps.Equals(input.Qps)) + ) && + ( + this.PerSourceIpQps == input.PerSourceIpQps || + (this.PerSourceIpQps != null && + this.PerSourceIpQps.Equals(input.PerSourceIpQps)) + ) && + ( + this.Burst == input.Burst || + (this.Burst != null && + this.Burst.Equals(input.Burst)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Qps != null) + hashCode = hashCode * 59 + this.Qps.GetHashCode(); + if (this.PerSourceIpQps != null) + hashCode = hashCode * 59 + this.PerSourceIpQps.GetHashCode(); + if (this.Burst != null) + hashCode = hashCode * 59 + this.Burst.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpadateIpGroupIpOption.cs b/Services/Elb/V3/Model/UpadateIpGroupIpOption.cs index 537bd4a56..f595aff24 100644 --- a/Services/Elb/V3/Model/UpadateIpGroupIpOption.cs +++ b/Services/Elb/V3/Model/UpadateIpGroupIpOption.cs @@ -17,13 +17,13 @@ public class UpadateIpGroupIpOption { /// - /// IP地址。支持IPv4、IPv6。若传入IP地址不存在,则新增;否则更新已有IP地址的描述信息。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) + /// 参数解释:IP地址。支持IPv4、IPv6。若传入IP地址不存在,则新增;否则更新已有IP地址的描述信息。 [不支持IPv6,请勿设置为IPv6地址。](tag:dt,dt_test) /// [JsonProperty("ip", NullValueHandling = NullValueHandling.Ignore)] public string Ip { get; set; } /// - /// 备注信息。 + /// 参数解释:备注信息。 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } diff --git a/Services/Elb/V3/Model/UpdateCertificateOption.cs b/Services/Elb/V3/Model/UpdateCertificateOption.cs index f5db03aa6..086698ee0 100644 --- a/Services/Elb/V3/Model/UpdateCertificateOption.cs +++ b/Services/Elb/V3/Model/UpdateCertificateOption.cs @@ -41,7 +41,7 @@ public class UpdateCertificateOption public string PrivateKey { get; set; } /// - /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com; 泛域名:在普通域名的基础上仅允许首字母为\"*\"。例:*.test.com + /// 服务器证书所签域名。该字段仅type为server时有效。 总长度为0-10000,由若干普通域名或泛域名组成,域名之间以\",\"分割,不超过100个域名。 普通域名:由若干字符串组成,字符串间以\".\"分割,单个字符串长度不超过63个字符, 只能包含英文字母、数字或\"-\",且必须以字母或数字开头和结尾。例:www.test.com; 泛域名:在普通域名的基础上仅允许首字母为\"\\*\"。例:\\*.test.com /// [JsonProperty("domain", NullValueHandling = NullValueHandling.Ignore)] public string Domain { get; set; } diff --git a/Services/Elb/V3/Model/UpdateFixtedResponseConfig.cs b/Services/Elb/V3/Model/UpdateFixtedResponseConfig.cs index c9e3a9223..1308304c8 100644 --- a/Services/Elb/V3/Model/UpdateFixtedResponseConfig.cs +++ b/Services/Elb/V3/Model/UpdateFixtedResponseConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 固定返回页面的配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为FIXED_RESPONSE时生效,且为必选字段,其他action不可指定,否则报错。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class UpdateFixtedResponseConfig { @@ -166,6 +166,24 @@ public bool Equals(ContentTypeEnum obj) [JsonProperty("message_body", NullValueHandling = NullValueHandling.Ignore)] public string MessageBody { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateTrafficLimitConfig TrafficLimitConfig { get; set; } + /// @@ -178,6 +196,9 @@ public override string ToString() sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); sb.Append(" contentType: ").Append(ContentType).Append("\n"); sb.Append(" messageBody: ").Append(MessageBody).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -213,6 +234,21 @@ public bool Equals(UpdateFixtedResponseConfig input) this.MessageBody == input.MessageBody || (this.MessageBody != null && this.MessageBody.Equals(input.MessageBody)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -230,6 +266,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.ContentType.GetHashCode(); if (this.MessageBody != null) hashCode = hashCode * 59 + this.MessageBody.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/UpdateHealthMonitorOption.cs b/Services/Elb/V3/Model/UpdateHealthMonitorOption.cs index 7ed40e52c..3444ee175 100644 --- a/Services/Elb/V3/Model/UpdateHealthMonitorOption.cs +++ b/Services/Elb/V3/Model/UpdateHealthMonitorOption.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class UpdateHealthMonitorOption { /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 [JsonConverter(typeof(EnumClassConverter))] public class HttpMethodEnum { @@ -37,48 +37,12 @@ public class HttpMethodEnum /// public static readonly HttpMethodEnum POST = new HttpMethodEnum("POST"); - /// - /// Enum PUT for value: PUT - /// - public static readonly HttpMethodEnum PUT = new HttpMethodEnum("PUT"); - - /// - /// Enum DELETE for value: DELETE - /// - public static readonly HttpMethodEnum DELETE = new HttpMethodEnum("DELETE"); - - /// - /// Enum TRACE for value: TRACE - /// - public static readonly HttpMethodEnum TRACE = new HttpMethodEnum("TRACE"); - - /// - /// Enum OPTIONS for value: OPTIONS - /// - public static readonly HttpMethodEnum OPTIONS = new HttpMethodEnum("OPTIONS"); - - /// - /// Enum CONNECT for value: CONNECT - /// - public static readonly HttpMethodEnum CONNECT = new HttpMethodEnum("CONNECT"); - - /// - /// Enum PATCH for value: PATCH - /// - public static readonly HttpMethodEnum PATCH = new HttpMethodEnum("PATCH"); - private static readonly Dictionary StaticFields = new Dictionary() { { "GET", GET }, { "HEAD", HEAD }, { "POST", POST }, - { "PUT", PUT }, - { "DELETE", DELETE }, - { "TRACE", TRACE }, - { "OPTIONS", OPTIONS }, - { "CONNECT", CONNECT }, - { "PATCH", PATCH }, }; private string _value; @@ -192,13 +156,13 @@ public bool Equals(HttpMethodEnum obj) public string DomainName { get; set; } /// - /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 + /// 期望响应状态码。 取值: - 单值:单个返回码,例如200。 - 列表:多个特定返回码,例如200,202。 - 区间:一个返回码区间,例如200-204。 仅支持HTTP/HTTPS/GRPC设置该字段,其他协议设置不会生效。 /// [JsonProperty("expected_codes", NullValueHandling = NullValueHandling.Ignore)] public string ExpectedCodes { get; set; } /// - /// HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 + /// HTTP请求方法。 取值:GET、HEAD、POST,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 /// [JsonProperty("http_method", NullValueHandling = NullValueHandling.Ignore)] public HttpMethodEnum HttpMethod { get; set; } @@ -239,7 +203,7 @@ public bool Equals(HttpMethodEnum obj) public string UrlPath { get; set; } /// - /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS、TLS和GRPC。 使用说明: - 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 - 若pool的protocol为UDP,则type只能UDP_CONNECT。 - 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 - 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为GRPC,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 - 若pool的protocol为TLS,则type可以是TCP、HTTP、HTTPS、TLS、GRPC。 [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public string Type { get; set; } diff --git a/Services/Elb/V3/Model/UpdateInsertHeaderConfig.cs b/Services/Elb/V3/Model/UpdateInsertHeaderConfig.cs new file mode 100644 index 000000000..de39a8878 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateInsertHeaderConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加请求头参数。 + /// + public class UpdateInsertHeaderConfig + { + + /// + /// 支持1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 key不能是以下字符: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out。 + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + /// + /// 可选值:USER_DEFINED,REFERENCE_HEADER,SYSTEM_DEFINED。 + /// + [JsonProperty("value_type", NullValueHandling = NullValueHandling.Ignore)] + public string ValueType { get; set; } + + /// + /// header值。当value_type为SYSTEM_DEFINED时,value只可从CLIENT-PORT,CLIENT-IP, ELB-PROTOCOL, ELB-ID, ELB-PORT, ELB-EIP, ELB-VIP中取值。 取值范围:1-128个字符, 支持ascii码值32<=ch<=127范围内可打印字符,*和英文问号?。不能以空格开头或结尾。 + /// + [JsonProperty("value", NullValueHandling = NullValueHandling.Ignore)] + public string Value { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateInsertHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append(" valueType: ").Append(ValueType).Append("\n"); + sb.Append(" value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateInsertHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateInsertHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ) && + ( + this.ValueType == input.ValueType || + (this.ValueType != null && + this.ValueType.Equals(input.ValueType)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + if (this.ValueType != null) + hashCode = hashCode * 59 + this.ValueType.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateInsertHeadersConfig.cs b/Services/Elb/V3/Model/UpdateInsertHeadersConfig.cs new file mode 100644 index 000000000..e5f24c6b9 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateInsertHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要添加的请求头参数列表。 + /// + public class UpdateInsertHeadersConfig + { + + /// + /// 要添加请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateInsertHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateInsertHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateInsertHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateIpGroupOption.cs b/Services/Elb/V3/Model/UpdateIpGroupOption.cs index 090b11ccb..6e8ccd458 100644 --- a/Services/Elb/V3/Model/UpdateIpGroupOption.cs +++ b/Services/Elb/V3/Model/UpdateIpGroupOption.cs @@ -17,19 +17,19 @@ public class UpdateIpGroupOption { /// - /// IP地址组的描述信息 + /// 参数解释:IP地址组的描述信息 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } /// - /// IP地址组的名称 + /// 参数解释:IP地址组的名称 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// IP地址组中包含的IP列表。 + /// 参数解释:IP地址组中包含的IP列表。 /// [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } diff --git a/Services/Elb/V3/Model/UpdateIpGroupRequest.cs b/Services/Elb/V3/Model/UpdateIpGroupRequest.cs index 02e9db3b6..8b0ab4587 100644 --- a/Services/Elb/V3/Model/UpdateIpGroupRequest.cs +++ b/Services/Elb/V3/Model/UpdateIpGroupRequest.cs @@ -17,7 +17,7 @@ public class UpdateIpGroupRequest { /// - /// 待更新的IP地址组的ID。 + /// 参数解释:待更新的IP地址组的ID。 /// [SDKProperty("ipgroup_id", IsPath = true)] [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/UpdateIpGroupResponse.cs b/Services/Elb/V3/Model/UpdateIpGroupResponse.cs index 5db8117c2..7a535ecc6 100644 --- a/Services/Elb/V3/Model/UpdateIpGroupResponse.cs +++ b/Services/Elb/V3/Model/UpdateIpGroupResponse.cs @@ -23,7 +23,7 @@ public class UpdateIpGroupResponse : SdkResponse public IpGroup Ipgroup { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/UpdateIpListOption.cs b/Services/Elb/V3/Model/UpdateIpListOption.cs index 7aef478af..f4cb844a0 100644 --- a/Services/Elb/V3/Model/UpdateIpListOption.cs +++ b/Services/Elb/V3/Model/UpdateIpListOption.cs @@ -17,19 +17,19 @@ public class UpdateIpListOption { /// - /// IP地址组的名称 + /// 参数解释:IP地址组的名称 /// [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] public string Name { get; set; } /// - /// IP地址组中包含的IP列表。 + /// 参数解释:IP地址组中包含的IP列表。 /// [JsonProperty("ip_list", NullValueHandling = NullValueHandling.Ignore)] public List IpList { get; set; } /// - /// IP地址组的描述信息 + /// 参数解释:IP地址组的描述信息 /// [JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)] public string Description { get; set; } diff --git a/Services/Elb/V3/Model/UpdateIpListRequest.cs b/Services/Elb/V3/Model/UpdateIpListRequest.cs index 0b6d57aff..915918a07 100644 --- a/Services/Elb/V3/Model/UpdateIpListRequest.cs +++ b/Services/Elb/V3/Model/UpdateIpListRequest.cs @@ -17,7 +17,7 @@ public class UpdateIpListRequest { /// - /// IP地址组ID。 + /// 参数解释:IP地址组ID。 /// [SDKProperty("ipgroup_id", IsPath = true)] [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] diff --git a/Services/Elb/V3/Model/UpdateIpListResponse.cs b/Services/Elb/V3/Model/UpdateIpListResponse.cs index e2609df7b..43ac4f77c 100644 --- a/Services/Elb/V3/Model/UpdateIpListResponse.cs +++ b/Services/Elb/V3/Model/UpdateIpListResponse.cs @@ -23,7 +23,7 @@ public class UpdateIpListResponse : SdkResponse public IpGroup Ipgroup { get; set; } /// - /// 请求ID。 注:自动生成 。 + /// 参数解释:请求ID。 注:自动生成 。 /// [JsonProperty("request_id", NullValueHandling = NullValueHandling.Ignore)] public string RequestId { get; set; } diff --git a/Services/Elb/V3/Model/UpdateL7PolicyOption.cs b/Services/Elb/V3/Model/UpdateL7PolicyOption.cs index 02d623b98..a302e6d3b 100644 --- a/Services/Elb/V3/Model/UpdateL7PolicyOption.cs +++ b/Services/Elb/V3/Model/UpdateL7PolicyOption.cs @@ -46,6 +46,18 @@ public class UpdateL7PolicyOption [JsonProperty("redirect_pool_id", NullValueHandling = NullValueHandling.Ignore)] public string RedirectPoolId { get; set; } + /// + /// 转发到多个主机组列表。一个policy最多配置5个pool。 + /// + [JsonProperty("redirect_pools_config", NullValueHandling = NullValueHandling.Ignore)] + public List RedirectPoolsConfig { get; set; } + + /// + /// + /// + [JsonProperty("redirect_pools_sticky_session_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateRedirectPoolsStickySessionConfig RedirectPoolsStickySessionConfig { get; set; } + /// /// /// @@ -71,7 +83,7 @@ public class UpdateL7PolicyOption public List Rules { get; set; } /// - /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发策略的优先级。数字越小表示优先级越高,同一监听器下不允许重复。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_LISTENER时,仅支持指定为0,优先级最高。 当关联的listener没有开启enhance_l7policy_enable,按原有policy的排序逻辑,自动排序。 各域名之间优先级独立,相同域名下,按path的compare_type排序, 精确>前缀>正则,匹配类型相同时,path的长度越长优先级越高。 若policy下只有域名rule,没有路径rule,默认path为前缀匹配/。 当关联的listener开启了enhance_l7policy_enable,且不传该字段, 则新创建的转发策略的优先级的值为:同一监听器下已有转发策略的优先级的最大值+1。 因此,若当前已有转发策略的优先级的最大值是10000,新创建会因超出取值范围10000而失败。 此时可通过传入指定priority,或调整原有policy的优先级来避免错误。 若监听器下没有转发策略,则新建的转发策略的优先级为1。 [共享型负载均衡器下的转发策略不支持该字段。 ](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("priority", NullValueHandling = NullValueHandling.Ignore)] public int? Priority { get; set; } @@ -90,6 +102,8 @@ public override string ToString() sb.Append(" name: ").Append(Name).Append("\n"); sb.Append(" redirectListenerId: ").Append(RedirectListenerId).Append("\n"); sb.Append(" redirectPoolId: ").Append(RedirectPoolId).Append("\n"); + sb.Append(" redirectPoolsConfig: ").Append(RedirectPoolsConfig).Append("\n"); + sb.Append(" redirectPoolsStickySessionConfig: ").Append(RedirectPoolsStickySessionConfig).Append("\n"); sb.Append(" redirectUrlConfig: ").Append(RedirectUrlConfig).Append("\n"); sb.Append(" fixedResponseConfig: ").Append(FixedResponseConfig).Append("\n"); sb.Append(" redirectPoolsExtendConfig: ").Append(RedirectPoolsExtendConfig).Append("\n"); @@ -141,6 +155,17 @@ public bool Equals(UpdateL7PolicyOption input) (this.RedirectPoolId != null && this.RedirectPoolId.Equals(input.RedirectPoolId)) ) && + ( + this.RedirectPoolsConfig == input.RedirectPoolsConfig || + this.RedirectPoolsConfig != null && + input.RedirectPoolsConfig != null && + this.RedirectPoolsConfig.SequenceEqual(input.RedirectPoolsConfig) + ) && + ( + this.RedirectPoolsStickySessionConfig == input.RedirectPoolsStickySessionConfig || + (this.RedirectPoolsStickySessionConfig != null && + this.RedirectPoolsStickySessionConfig.Equals(input.RedirectPoolsStickySessionConfig)) + ) && ( this.RedirectUrlConfig == input.RedirectUrlConfig || (this.RedirectUrlConfig != null && @@ -187,6 +212,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.RedirectListenerId.GetHashCode(); if (this.RedirectPoolId != null) hashCode = hashCode * 59 + this.RedirectPoolId.GetHashCode(); + if (this.RedirectPoolsConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsConfig.GetHashCode(); + if (this.RedirectPoolsStickySessionConfig != null) + hashCode = hashCode * 59 + this.RedirectPoolsStickySessionConfig.GetHashCode(); if (this.RedirectUrlConfig != null) hashCode = hashCode * 59 + this.RedirectUrlConfig.GetHashCode(); if (this.FixedResponseConfig != null) diff --git a/Services/Elb/V3/Model/UpdateL7RuleOption.cs b/Services/Elb/V3/Model/UpdateL7RuleOption.cs index 72b7a5712..08532e723 100644 --- a/Services/Elb/V3/Model/UpdateL7RuleOption.cs +++ b/Services/Elb/V3/Model/UpdateL7RuleOption.cs @@ -47,7 +47,7 @@ public class UpdateL7RuleOption public string Value { get; set; } /// - /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发规则的匹配条件。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效。 若转发规则配置了conditions,字段key、字段value的值无意义。 同一个rule内的conditions列表中所有key必须相同,value不允许重复。 [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("conditions", NullValueHandling = NullValueHandling.Ignore)] public List Conditions { get; set; } diff --git a/Services/Elb/V3/Model/UpdateListenerIpGroupOption.cs b/Services/Elb/V3/Model/UpdateListenerIpGroupOption.cs index 976544ccb..e3e48a737 100644 --- a/Services/Elb/V3/Model/UpdateListenerIpGroupOption.cs +++ b/Services/Elb/V3/Model/UpdateListenerIpGroupOption.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class UpdateListenerIpGroupOption { /// - /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; + /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; /// - /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; + /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; [JsonConverter(typeof(EnumClassConverter))] public class TypeEnum { @@ -132,7 +132,7 @@ public bool Equals(TypeEnum obj) /// - /// 监听器关联的访问控制组的id。 创建时必选,更新时非必选。 指定的ipgroup必须已存在,不能指定为null,否则与enable_ipgroup冲突。 + /// 监听器关联的访问控制组的id。 创建时必选,更新时非必选。 指定的ipgroup必须已存在,不能指定为null,否则与enable_ipgroup冲突。 /// [JsonProperty("ipgroup_id", NullValueHandling = NullValueHandling.Ignore)] public string IpgroupId { get; set; } @@ -144,7 +144,7 @@ public bool Equals(TypeEnum obj) public bool? EnableIpgroup { get; set; } /// - /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; + /// 访问控制组的类型。 white:白名单,只允许指定ip访问; black:黑名单,不允许指定ip访问; /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public TypeEnum Type { get; set; } diff --git a/Services/Elb/V3/Model/UpdateListenerOption.cs b/Services/Elb/V3/Model/UpdateListenerOption.cs index 9286e4750..7185b32f6 100644 --- a/Services/Elb/V3/Model/UpdateListenerOption.cs +++ b/Services/Elb/V3/Model/UpdateListenerOption.cs @@ -132,7 +132,7 @@ public bool Equals(ProtectionStatusEnum obj) /// - /// 监听器的管理状态。只能设置为true。 不支持该字段,请勿使用。 + /// 监听器的管理状态。只支持更新为true。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -192,7 +192,7 @@ public bool Equals(ProtectionStatusEnum obj) public string SniMatchAlgo { get; set; } /// - /// 监听器使用的安全策略。 [取值:tls-1-0-inherit,tls-1-0, tls-1-1, tls-1-2,tls-1-2-strict,tls-1-2-fs,tls-1-0-with-1-3, tls-1-2-fs-with-1-3, hybrid-policy-1-0,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0, tls-1-1, tls-1-2, tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,ocb,tlf,ctc,hcso,sbc,g42,tm,cmcc,hk-g42,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) + /// 监听器使用的安全策略。 [取值:tls-1-0-inherit、tls-1-0、tls-1-1、 tls-1-2、tls-1-2-strict、tls-1-2-fs、tls-1-0-with-1-3、 tls-1-2-fs-with-1-3、 hybrid-policy-1-0、tls-1-2-strict-no-cbc,默认:tls-1-0。 ](tag:hws,hws_hk,ocb,tlf,ctc,hcso,sbc,tm,cmcc,dt) [取值:tls-1-0、tls-1-1、tls-1-2、 tls-1-2-strict,默认:tls-1-0。](tag:hws_eu,g42,hk_g42,hcso_dt) [使用说明: - 仅对HTTPS协议类型的监听器且关联LB为独享型时有效。 - QUIC监听器不支持该字段。 - 若同时设置了security_policy_id和tls_ciphers_policy,则仅security_policy_id生效。 - 加密套件的优先顺序为ecc套件、rsa套件、tls1.3协议的套件(即支持ecc又支持rsa) ](tag:hws,hws_hk,hws_eu,ocb,tlf,ctc,hcso,sbc,g42,tm,cmcc,hk-g42,dt) [使用说明: - 仅对HTTPS协议类型的监听器有效](tag:hcso_dt) [不支持tls1.3协议的套件。](tag:tm,hws_eu,g42,hk_g42) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) /// [JsonProperty("tls_ciphers_policy", NullValueHandling = NullValueHandling.Ignore)] public string TlsCiphersPolicy { get; set; } @@ -204,7 +204,7 @@ public bool Equals(ProtectionStatusEnum obj) public string SecurityPolicyId { get; set; } /// - /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) + /// 是否开启后端服务器的重试。 取值:true 开启重试,false 不开启重试。默认:true。 [使用说明: - 若关联是共享型LB,仅在protocol为HTTP、TERMINATED_HTTPS时才能传入该字段。 - 若关联是独享型LB,仅在protocol为HTTP、HTTPS和QUIC时才能传入该字段。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 仅在protocol为HTTP、HTTPS时才能传入该字段。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) /// [JsonProperty("enable_member_retry", NullValueHandling = NullValueHandling.Ignore)] public bool? EnableMemberRetry { get; set; } @@ -222,7 +222,7 @@ public bool Equals(ProtectionStatusEnum obj) public int? ClientTimeout { get; set; } /// - /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - 若为TCP监听器,取值范围为(10-4000s)默认值为300s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 + /// 客户端连接空闲超时时间。在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值: - TCP监听器[和IP监听器](tag:hws_eu):10-4000s。 - 若为HTTP/HTTPS/TERMINATED_HTTPS监听器,取值范围为(0-4000s)默认值为60s。 共享型实例的UDP监听器不支持此字段。 /// [JsonProperty("keepalive_timeout", NullValueHandling = NullValueHandling.Ignore)] public int? KeepaliveTimeout { get; set; } @@ -234,19 +234,19 @@ public bool Equals(ProtectionStatusEnum obj) public UpdateListenerIpGroupOption Ipgroup { get; set; } /// - /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) + /// 是否透传客户端IP地址。开启后客户端IP地址将透传到后端服务器。 [仅作用于共享型LB的TCP/UDP监听器。 取值: - 共享型LB的TCP/UDP监听器可设置为true或false,不传默认为false。 - 共享型LB的HTTP/HTTPS监听器只支持设置为true,不传默认为true。 - 独享型负载均衡器所有协议的监听器只支持设置为true,不传默认为true。 使用说明: - 开启特性后,ELB和后端服务器之间直接使用真实的IP访问,需要确保已正确设置服务器的安全组以及访问控制策略。 - 开启特性后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 - 开启特性后,不支持变更后端服务器规格。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [只设支持置为true,不传默认为true。](tag:hws_eu,hcso_dt) /// [JsonProperty("transparent_client_ip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? TransparentClientIpEnable { get; set; } /// - /// 是否开启proxy_protocol。仅tcpssl监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 + /// 是否开启proxy_protocol。仅TLS监听器可指定,其他协议的监听器该字段不生效,proxy_protocol不开启。 /// [JsonProperty("proxy_protocol_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? ProxyProtocolEnable { get; set; } /// - /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt) > 开启后不支持关闭 + /// 是否开启高级转发策略功能。开启高级转发策略后,支持更灵活的转发策略和转发规则设置。 取值:true开启,false不开启。 开启后支持如下场景: - 转发策略的action字段支持指定为REDIRECT_TO_URL, FIXED_RESPONSE,即支持URL重定向和响应固定的内容给客户端。 - 转发策略支持指定priority、redirect_url_config、fixed_response_config字段。 - 转发规则rule的type可以指定METHOD, HEADER, QUERY_STRING, SOURCE_IP这几种取值。 - 转发规则rule的type为HOST_NAME时,转发规则rule的value支持通配符*。 - 转发规则支持指定conditions字段。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) > 开启后不支持关闭 /// [JsonProperty("enhance_l7policy_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? EnhanceL7policyEnable { get; set; } @@ -269,7 +269,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) + /// ELB是否开启gzip压缩,缺省值:false,非必选 [仅HTTP/HTTPS类型监听器支持配置。](tag:tm,hws_eu,g42,hk_g42,hcso_dt,dt,dt_test) [仅HTTP/HTTPS/QUIC类型监听器支持配置。](tag:hws,hws_hk,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,ocb,ctc,cmcc,sbc,hws_ocb,hk_sbc) /// [JsonProperty("gzip_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? GzipEnable { get; set; } diff --git a/Services/Elb/V3/Model/UpdateLoadBalancerOption.cs b/Services/Elb/V3/Model/UpdateLoadBalancerOption.cs index 3010464d0..b1ac235dd 100644 --- a/Services/Elb/V3/Model/UpdateLoadBalancerOption.cs +++ b/Services/Elb/V3/Model/UpdateLoadBalancerOption.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class UpdateLoadBalancerOption { /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) [JsonConverter(typeof(EnumClassConverter))] public class WafFailureActionEnum { @@ -253,7 +253,7 @@ public bool Equals(ProtectionStatusEnum obj) public string Name { get; set; } /// - /// 负载均衡器的启用状态,true表示启用,false表示停用。只能设置为true。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) + /// 负载均衡器的启用状态,true表示启用,false表示停用。 [不支持该字段,请勿使用。](tag:dt,dt_test,hcso_dt) /// [JsonProperty("admin_state_up", NullValueHandling = NullValueHandling.Ignore)] public bool? AdminStateUp { get; set; } @@ -265,13 +265,13 @@ public bool Equals(ProtectionStatusEnum obj) public string Description { get; set; } /// - /// 双栈类型负载均衡器所在子网的IPv6网络ID。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的id得到。 通过更新ipv6_vip_virsubnet_id可以更新负载均衡器所在IPv6子网,且负载均衡器的内网IPv6地址将发生变化。 使用说明: - ipv6_vip_virsubnet_id 对应的子网必须属于当前负载均衡器所在VPC,且子网需开启支持IPv6。 - 只有guaranteed是true的负载均衡器才支持更新ipv6_vip_virsubnet_id。 - *传入为null表示解绑IPv6子网。* - 更新IPv6子网不会导致IPv4子网发生变化。 [不支持IPv6,请勿使用。](tag:dt,dt_test) + /// 双栈类型负载均衡器所在子网的IPv6网络ID,也称为该负载均衡器实例的前端子网。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_network_id得到。 通过更新ipv6_vip_virsubnet_id可以更新负载均衡器所在IPv6子网,且负载均衡器的内网IPv6地址将发生变化。 使用说明: - ipv6_vip_virsubnet_id 对应的子网必须属于当前负载均衡器所在VPC,且子网需开启支持IPv6。 - 只有guaranteed是true的负载均衡器才支持更新ipv6_vip_virsubnet_id。 - *传入为null表示解绑IPv6子网。* - 更新IPv6子网不会导致IPv4子网发生变化。 [不支持IPv6,请勿使用。](tag:dt,dt_test) /// [JsonProperty("ipv6_vip_virsubnet_id", NullValueHandling = NullValueHandling.Ignore)] public string Ipv6VipVirsubnetId { get; set; } /// - /// 负载均衡器所在的IPv4子网ID。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到。 通过更新vip_subnet_cidr_id可以更新负载均衡器所在IPv4子网,并且负载均衡器的内网IPv4地址将发生变化。 使用说明: - 若同时设置了vip_address,则必须保证vip_address对应的IP在vip_subnet_cidr_id的子网网段中。 - vip_subnet_cidr_id对应的子网必须属于当前负载均衡器vpc_id对应的VPC。 - 只有guaranteed是true的负载均衡器才支持更新vip_subnet_cidr_id。 - *传入null表示解绑IPv4子网。* - 更新IPv子网不会导致IPv4子网发生变化。 + /// 负载均衡器所在的IPv4子网ID,也称为该负载均衡器实例的前端子网。可以通过GET https://{VPC_Endpoint}/v1/{project_id}/subnets 响应参数中的neutron_subnet_id得到。 通过更新vip_subnet_cidr_id可以更新负载均衡器所在IPv4子网,并且负载均衡器的内网IPv4地址将发生变化。 使用说明: - 若同时设置了vip_address,则必须保证vip_address对应的IP在vip_subnet_cidr_id的子网网段中。 - vip_subnet_cidr_id对应的子网必须属于当前负载均衡器vpc_id对应的VPC。 - 只有guaranteed是true的负载均衡器才支持更新vip_subnet_cidr_id。 - *传入null表示解绑IPv4子网。* - 更新IPv子网不会导致IPv4子网发生变化。 /// [JsonProperty("vip_subnet_cidr_id", NullValueHandling = NullValueHandling.Ignore)] public string VipSubnetCidrId { get; set; } @@ -283,13 +283,13 @@ public bool Equals(ProtectionStatusEnum obj) public string VipAddress { get; set; } /// - /// 网络型规格ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/flavors?type=L4 响应参数中的id得到。 - 仅当guaranteed是true的场合,才支持更新。 - 不允许非null变成null,null变成非null,即不配置七层规格和配置七层规格之间不允许切换; - 可以支持规格改大改小,注意改小过程中可能会造成部分长连接中断,影响部分链接的新建, - autoscaling.enable=true时,修改无意义,不生效。 - 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,dt) [只支持设置为l4_flavor.elb.shared。](tag:hcso_dt) [hcso场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 网络型规格ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/elb/flavors?type=L4 响应参数中的id得到。 - 仅当guaranteed是true的场合,才支持更新。 - 可以支持规格改大改小,注意改小过程中可能会造成部分长连接中断,影响部分链接的新建, - autoscaling.enable=true时,修改无意义,不生效。 - 当传入的规格类型为L4,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L4_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,dt) [只支持设置为l4_flavor.elb.shared。](tag:hcso_dt) [hcso场景下所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("l4_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L4FlavorId { get; set; } /// - /// 应用型ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/flavors?type=L7 响应参数中的id得到。 - 仅当guaranteed是true的场合,才支持更新。 - 不允许非null变成null,null变成非null,即不配置七层规格和配置七层规格之间不允许切换; - 可以支持规格改大改小,注意改小过程中可能会造成部分长连接中断,影响部分链接的新建, - autoscaling.enable=true时,修改无意义,不生效。 - 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,dt) [只支持设置为l7_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 应用型ID。 [使用说明: - 可以通过GET https://{ELB_Endpoint}/v3/{project_id}/elb/flavors?type=L7 响应参数中的id得到。 - 仅当guaranteed是true的场合,才支持更新。 - 可以支持规格改大改小,注意改小过程中可能会造成部分长连接中断,影响部分链接的新建, - autoscaling.enable=true时,修改无意义,不生效。 - 当传入的规格类型为L7,表示该实例为固定规格实例,按规格计费。 - 当传入的规格类型为L7_elastic_max,表示该实例为弹性实例,按LCU计费。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,dt) [只支持设置为l7_flavor.elb.shared。](tag:hcso_dt) [所有LB实例共享带宽,该字段无效,请勿使用。](tag:hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// [JsonProperty("l7_flavor_id", NullValueHandling = NullValueHandling.Ignore)] public string L7FlavorId { get; set; } @@ -301,7 +301,7 @@ public bool Equals(ProtectionStatusEnum obj) public BandwidthRef Ipv6Bandwidth { get; set; } /// - /// 是否启用跨VPC后端转发。 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) 取值: - true:开启。 - false:不开启。 使用说明: - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否启用跨VPC后端转发。 开启跨VPC后端转发后,后端服务器组不仅支持添加云上VPC内的服务器,还支持添加其他VPC、其他公有云、云下数据中心的服务器。 使用共享VPC的实例使用此特性时,需确保共享资源所有者已开通VPC对等连接,否则通信异常。 [仅独享型负载均衡器支持该特性。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) 取值: - true:开启。 - false:不开启。 使用说明: - 开启不能关闭。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("ip_target_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? IpTargetEnable { get; set; } @@ -313,7 +313,7 @@ public bool Equals(ProtectionStatusEnum obj) public List ElbVirsubnetIds { get; set; } /// - /// 是否开启删除保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? DeletionProtectionEnable { get; set; } @@ -337,7 +337,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ChargeMode { get; set; } /// - /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) + /// WAF故障时的流量处理策略。discard:丢弃,forward: 转发到后端(默认) 使用说明:只有绑定了waf的LB实例,该字段才会生效。 [不支持该字段,请勿使用。](tag:hws_hk,hws_eu,hws_test,hcs,hcs_sm,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b,hcso_dt,dt,dt_test,ocb,ctc,cmcc,tm,sbc,g42,hws_ocb,hk_sbc,hk_tm,hk_g42) /// [JsonProperty("waf_failure_action", NullValueHandling = NullValueHandling.Ignore)] public WafFailureActionEnum WafFailureAction { get; set; } diff --git a/Services/Elb/V3/Model/UpdateLoadBalancerResponse.cs b/Services/Elb/V3/Model/UpdateLoadBalancerResponse.cs index f2e1cdff9..252a969bd 100644 --- a/Services/Elb/V3/Model/UpdateLoadBalancerResponse.cs +++ b/Services/Elb/V3/Model/UpdateLoadBalancerResponse.cs @@ -23,13 +23,13 @@ public class UpdateLoadBalancerResponse : SdkResponse public LoadBalancer Loadbalancer { get; set; } /// - /// 负载均衡器的id[(包周期场景返回该字段) 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,fcs,ctc,cmcc) + /// 负载均衡器的id[(包周期场景返回该字段) 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hk_vdf,fcs,ctc,cmcc) /// [JsonProperty("loadbalancer_id", NullValueHandling = NullValueHandling.Ignore)] public string LoadbalancerId { get; set; } /// - /// 订单号[(包周期规格变更场景返回该字段) 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,fcs,ctc,cmcc) + /// 订单号[(包周期规格变更场景返回该字段) 不支持该字段,请勿使用](tag:hws_eu,g42,hk_g42,dt,dt_test,hcso_dt,hk_vdf,fcs,ctc,cmcc) /// [JsonProperty("order_id", NullValueHandling = NullValueHandling.Ignore)] public string OrderId { get; set; } diff --git a/Services/Elb/V3/Model/UpdateLoadbalancerAutoscalingOption.cs b/Services/Elb/V3/Model/UpdateLoadbalancerAutoscalingOption.cs index 51f05c430..384057b01 100644 --- a/Services/Elb/V3/Model/UpdateLoadbalancerAutoscalingOption.cs +++ b/Services/Elb/V3/Model/UpdateLoadbalancerAutoscalingOption.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 弹性扩缩容配置信息。负载均衡器配置并开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 使用说明: - 仅当租户白名单放开后该字段才有效 - 开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该LB实例弹性规格的上限。 [该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) + /// 弹性扩缩容配置信息。负载均衡器配置并开启弹性扩缩容后,可根据负载情况自动调整负载均衡器的规格。 使用说明: - 仅当项目白名单放开后该字段才有效 - 开启弹性扩缩容后,l4_flavor_id和l7_flavor_id表示该LB实例弹性规格的上限。 [该字段已经废弃,但仍然保留兼容性支持,建议不要使用该字段。如果传入该字段,创建的弹性实例将会有保底规格并产生对应保底规格的费用。](tag:cmcc,ctc,dc2,dt,dt_test,fcs_arm,fcs_dt,fm,h3dc,hcs,hcso_dt,HEC,hk_sbc,hk_tm,hws,hws_hk,hws_hn,hws_ocb,hws_test,kvm,nohcs,nornal_iec,ocb,sbc,sfsturb,tlf,tlf_test,tm) [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42,hcso,hk_vdf,fcs,fcs_vm,mix,hcso_g42,hcso_g42_b) /// public class UpdateLoadbalancerAutoscalingOption { diff --git a/Services/Elb/V3/Model/UpdatePoolOption.cs b/Services/Elb/V3/Model/UpdatePoolOption.cs index a4d4aeabf..6e1eeacc6 100644 --- a/Services/Elb/V3/Model/UpdatePoolOption.cs +++ b/Services/Elb/V3/Model/UpdatePoolOption.cs @@ -144,7 +144,7 @@ public bool Equals(ProtectionStatusEnum obj) public string Description { get; set; } /// - /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) + /// 后端云服务器组的负载均衡算法。 取值: - ROUND_ROBIN:加权轮询算法。 - LEAST_CONNECTIONS:加权最少连接算法。 - SOURCE_IP:源IP算法。 - QUIC_CID:连接ID算法。 [- 2_TUPLE_HASH:二元组hash算法,仅IP类型的pool支持。 - 3_TUPLE_HASH:三元组hash算法,仅IP类型的pool支持。 - 4_TUPLE_HASH:五元组hash算法,仅IP类型的pool支持。](tag:hws_eu 使用说明: - 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 - 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 [不支持QUIC_CID。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC_CID。](tag:dt,dt_test) /// [JsonProperty("lb_algorithm", NullValueHandling = NullValueHandling.Ignore)] public string LbAlgorithm { get; set; } @@ -168,7 +168,7 @@ public bool Equals(ProtectionStatusEnum obj) public UpdatePoolSlowStartOption SlowStart { get; set; } /// - /// 是否开启删除保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 是否开启删除保护。 取值:false不开启,true开启。 > 退场时需要先关闭所有资源的删除保护开关。 [不支持该字段,请勿使用。](tag:hws_eu,g42,hk_g42) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// [JsonProperty("member_deletion_protection_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? MemberDeletionProtectionEnable { get; set; } @@ -197,7 +197,7 @@ public bool Equals(ProtectionStatusEnum obj) public string ProtectionReason { get; set; } /// - /// 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启,默认false。 > 关闭端口透传后,请求会转发给后端服务器protocol_port字段指定端口。 + /// 后端是否开启端口透传。开启后,后端服务器端口与前端监听器端口保持一致。关闭后,请求会转发给后端服务器protocol_port字段指定端口。取值:false不开启,true开启。 使用说明: - 仅QUIC,TCP,UDP的pool支持。 /// [JsonProperty("any_port_enable", NullValueHandling = NullValueHandling.Ignore)] public bool? AnyPortEnable { get; set; } @@ -208,6 +208,12 @@ public bool Equals(ProtectionStatusEnum obj) [JsonProperty("connection_drain", NullValueHandling = NullValueHandling.Ignore)] public ConnectionDrain ConnectionDrain { get; set; } + /// + /// + /// + [JsonProperty("pool_health", NullValueHandling = NullValueHandling.Ignore)] + public PoolHealth PoolHealth { get; set; } + /// @@ -230,6 +236,7 @@ public override string ToString() sb.Append(" protectionReason: ").Append(ProtectionReason).Append("\n"); sb.Append(" anyPortEnable: ").Append(AnyPortEnable).Append("\n"); sb.Append(" connectionDrain: ").Append(ConnectionDrain).Append("\n"); + sb.Append(" poolHealth: ").Append(PoolHealth).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -315,6 +322,11 @@ public bool Equals(UpdatePoolOption input) this.ConnectionDrain == input.ConnectionDrain || (this.ConnectionDrain != null && this.ConnectionDrain.Equals(input.ConnectionDrain)) + ) && + ( + this.PoolHealth == input.PoolHealth || + (this.PoolHealth != null && + this.PoolHealth.Equals(input.PoolHealth)) ); } @@ -352,6 +364,8 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.AnyPortEnable.GetHashCode(); if (this.ConnectionDrain != null) hashCode = hashCode * 59 + this.ConnectionDrain.GetHashCode(); + if (this.PoolHealth != null) + hashCode = hashCode * 59 + this.PoolHealth.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/UpdatePoolSessionPersistenceOption.cs b/Services/Elb/V3/Model/UpdatePoolSessionPersistenceOption.cs index baccd16c4..27eb02189 100644 --- a/Services/Elb/V3/Model/UpdatePoolSessionPersistenceOption.cs +++ b/Services/Elb/V3/Model/UpdatePoolSessionPersistenceOption.cs @@ -16,9 +16,9 @@ namespace HuaweiCloud.SDK.Elb.V3.Model public class UpdatePoolSessionPersistenceOption { /// - /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// - /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) [JsonConverter(typeof(EnumClassConverter))] public class TypeEnum { @@ -138,13 +138,13 @@ public bool Equals(TypeEnum obj) /// - /// cookie名称。 [共享型LB,支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 独享型LB,支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt,hk_tm) [支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws_eu,hcso_dt) 使用说明: - 只有当type为APP_COOKIE时才有效。其他情况下传该字段会报错。 [不支持该字段,请勿使用。](tag:hws_eu,hcso_dt) + /// cookie名称。 [共享型LB,支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 独享型LB,支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws,hws_hk,ocb,ctc,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt,hk_tm) [支持字母、数字、中划线(-)、下划线(_)和点号(.),最大长度255个字符。](tag:hws_eu,hcso_dt) 使用说明: - 只有当type为APP_COOKIE时才有效。其他情况下传该字段会报错。 [不支持该字段,请勿使用。](tag:hws_eu,hcso_dt) /// [JsonProperty("cookie_name", NullValueHandling = NullValueHandling.Ignore)] public string CookieName { get; set; } /// - /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) + /// 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 - 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [使用说明: - 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 - 当pool的protocol为HTTP、HTTPS时。type只能为HTTP_COOKIE, 其他取值会话保持失效。](tag:hws_eu,hcso_dt) [不支持QUIC。](tag:tm,hws_eu,g42,hk_g42,hcso_dt) [荷兰region不支持QUIC。](tag:dt,dt_test) /// [JsonProperty("type", NullValueHandling = NullValueHandling.Ignore)] public TypeEnum Type { get; set; } diff --git a/Services/Elb/V3/Model/UpdatePoolSlowStartOption.cs b/Services/Elb/V3/Model/UpdatePoolSlowStartOption.cs index 58d296ae7..bab4077e0 100644 --- a/Services/Elb/V3/Model/UpdatePoolSlowStartOption.cs +++ b/Services/Elb/V3/Model/UpdatePoolSlowStartOption.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 慢启动信息。开启慢启动后,将会在设定的时间段(duration)内对新添加到后端服务器组的后端服务器进行预热,转发到该服务器的请求数量线性增加。 当后端服务器组的协议为HTTP/HTTPS时有效,其他协议传入该字段将报错。 [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class UpdatePoolSlowStartOption { diff --git a/Services/Elb/V3/Model/UpdateRedirectPoolsConfig.cs b/Services/Elb/V3/Model/UpdateRedirectPoolsConfig.cs new file mode 100644 index 000000000..9655a1fd9 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateRedirectPoolsConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略主机组的权重配置。当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 使用说明: - 当action为REDIRECT_TO_POOL时,redirect_pool_id和redirect_pools_config必须指定一个,两个都指定时按redirect_pools_config生效。 - 当action是REDIRECT_TO_LISTENER和REzDIRECT_TO_URL时,传入该字段会报错。 - 一个policy最多支持配置5个pool。Pool不允许重复。 - 仅支持全量覆盖。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class UpdateRedirectPoolsConfig + { + + /// + /// 所在后端服务器组ID。 + /// + [JsonProperty("pool_id", NullValueHandling = NullValueHandling.Ignore)] + public string PoolId { get; set; } + + /// + /// 转发策略主机组的权重,取值范围为[1,100],默认为1。请求将根据该权重进行负载分发到不同的主机组。 权重值越大,分发的请求越多。权重为0的后端不再接受新的请求。 + /// + [JsonProperty("weight", NullValueHandling = NullValueHandling.Ignore)] + public string Weight { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateRedirectPoolsConfig {\n"); + sb.Append(" poolId: ").Append(PoolId).Append("\n"); + sb.Append(" weight: ").Append(Weight).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateRedirectPoolsConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateRedirectPoolsConfig input) + { + if (input == null) + return false; + + return + ( + this.PoolId == input.PoolId || + (this.PoolId != null && + this.PoolId.Equals(input.PoolId)) + ) && + ( + this.Weight == input.Weight || + (this.Weight != null && + this.Weight.Equals(input.Weight)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PoolId != null) + hashCode = hashCode * 59 + this.PoolId.GetHashCode(); + if (this.Weight != null) + hashCode = hashCode * 59 + this.Weight.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateRedirectPoolsExtendConfig.cs b/Services/Elb/V3/Model/UpdateRedirectPoolsExtendConfig.cs index cb472406f..3b79e66e5 100644 --- a/Services/Elb/V3/Model/UpdateRedirectPoolsExtendConfig.cs +++ b/Services/Elb/V3/Model/UpdateRedirectPoolsExtendConfig.cs @@ -26,7 +26,25 @@ public class UpdateRedirectPoolsExtendConfig /// /// [JsonProperty("rewrite_url_config", NullValueHandling = NullValueHandling.Ignore)] - public CreateRewriteUrlConfig RewriteUrlConfig { get; set; } + public UpdateRewriteUrlConfig RewriteUrlConfig { get; set; } + + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("traffic_limit_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateTrafficLimitConfig TrafficLimitConfig { get; set; } @@ -39,6 +57,9 @@ public override string ToString() sb.Append("class UpdateRedirectPoolsExtendConfig {\n"); sb.Append(" rewriteUrlEnable: ").Append(RewriteUrlEnable).Append("\n"); sb.Append(" rewriteUrlConfig: ").Append(RewriteUrlConfig).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); + sb.Append(" trafficLimitConfig: ").Append(TrafficLimitConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -69,6 +90,21 @@ public bool Equals(UpdateRedirectPoolsExtendConfig input) this.RewriteUrlConfig == input.RewriteUrlConfig || (this.RewriteUrlConfig != null && this.RewriteUrlConfig.Equals(input.RewriteUrlConfig)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) + ) && + ( + this.TrafficLimitConfig == input.TrafficLimitConfig || + (this.TrafficLimitConfig != null && + this.TrafficLimitConfig.Equals(input.TrafficLimitConfig)) ); } @@ -84,6 +120,12 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.RewriteUrlEnable.GetHashCode(); if (this.RewriteUrlConfig != null) hashCode = hashCode * 59 + this.RewriteUrlConfig.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); + if (this.TrafficLimitConfig != null) + hashCode = hashCode * 59 + this.TrafficLimitConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/UpdateRedirectPoolsStickySessionConfig.cs b/Services/Elb/V3/Model/UpdateRedirectPoolsStickySessionConfig.cs new file mode 100644 index 000000000..0237257c8 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateRedirectPoolsStickySessionConfig.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 配置转发策略关联的服务器组之间会话保持。负载均衡器会根据客户端第一个请求生成一个cookie,后续所有包含这个cookie值的请求都会由同一个pool处理。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// + public class UpdateRedirectPoolsStickySessionConfig + { + + /// + /// 转发策略主机组会话保持开启的开关。 默认值为false,表示关闭主机组会话保持。 + /// + [JsonProperty("enable", NullValueHandling = NullValueHandling.Ignore)] + public bool? Enable { get; set; } + + /// + /// 会话保持的时间。 适用范围:范围为[1,1440](分钟),默认值1440。 [荷兰region不支持QUIC。](tag:dt,dt_test) + /// + [JsonProperty("timeout", NullValueHandling = NullValueHandling.Ignore)] + public int? Timeout { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateRedirectPoolsStickySessionConfig {\n"); + sb.Append(" enable: ").Append(Enable).Append("\n"); + sb.Append(" timeout: ").Append(Timeout).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateRedirectPoolsStickySessionConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateRedirectPoolsStickySessionConfig input) + { + if (input == null) + return false; + + return + ( + this.Enable == input.Enable || + (this.Enable != null && + this.Enable.Equals(input.Enable)) + ) && + ( + this.Timeout == input.Timeout || + (this.Timeout != null && + this.Timeout.Equals(input.Timeout)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Enable != null) + hashCode = hashCode * 59 + this.Enable.GetHashCode(); + if (this.Timeout != null) + hashCode = hashCode * 59 + this.Timeout.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateRedirectUrlConfig.cs b/Services/Elb/V3/Model/UpdateRedirectUrlConfig.cs index 4caa4521d..871dd3d57 100644 --- a/Services/Elb/V3/Model/UpdateRedirectUrlConfig.cs +++ b/Services/Elb/V3/Model/UpdateRedirectUrlConfig.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt) + /// 转发到的url配置。 当监听器的高级转发策略功能(enhance_l7policy_enable)开启后才会生效,未开启传入该字段会报错。 当action为REDIRECT_TO_URL时生效,且为必选字段,其他action不可指定,否则报错。 格式:protocol://host:port/path?query protocol、host、port、path不允许同时不传或同时传${xxx} (${xxx}表示原值,如${host}表示被转发的请求URL的host部分)。 protocol和port传入的值不能与l7policy关联的监听器一致且host、path同时不传或同时传${xxx}。 [共享型负载均衡器下的转发策略不支持该字段,传入会报错。 ](tag:hws,hws_hk,ocb,ctc,hcs,g42,tm,cmcc,hk_g42,hws_ocb,hk_vdf,fcs,dt) [不支持该字段,请勿使用。](tag:hcso_dt) [荷兰region不支持该字段,请勿使用。](tag:dt,dt_test) /// public class UpdateRedirectUrlConfig { @@ -304,6 +304,18 @@ public bool Equals(StatusCodeEnum obj) /// [JsonProperty("status_code", NullValueHandling = NullValueHandling.Ignore)] public StatusCodeEnum StatusCode { get; set; } + /// + /// + /// + [JsonProperty("insert_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateInsertHeadersConfig InsertHeadersConfig { get; set; } + + /// + /// + /// + [JsonProperty("remove_headers_config", NullValueHandling = NullValueHandling.Ignore)] + public UpdateRemoveHeadersConfig RemoveHeadersConfig { get; set; } + /// @@ -319,6 +331,8 @@ public override string ToString() sb.Append(" path: ").Append(Path).Append("\n"); sb.Append(" query: ").Append(Query).Append("\n"); sb.Append(" statusCode: ").Append(StatusCode).Append("\n"); + sb.Append(" insertHeadersConfig: ").Append(InsertHeadersConfig).Append("\n"); + sb.Append(" removeHeadersConfig: ").Append(RemoveHeadersConfig).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -369,6 +383,16 @@ public bool Equals(UpdateRedirectUrlConfig input) this.StatusCode == input.StatusCode || (this.StatusCode != null && this.StatusCode.Equals(input.StatusCode)) + ) && + ( + this.InsertHeadersConfig == input.InsertHeadersConfig || + (this.InsertHeadersConfig != null && + this.InsertHeadersConfig.Equals(input.InsertHeadersConfig)) + ) && + ( + this.RemoveHeadersConfig == input.RemoveHeadersConfig || + (this.RemoveHeadersConfig != null && + this.RemoveHeadersConfig.Equals(input.RemoveHeadersConfig)) ); } @@ -392,6 +416,10 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Query.GetHashCode(); if (this.StatusCode != null) hashCode = hashCode * 59 + this.StatusCode.GetHashCode(); + if (this.InsertHeadersConfig != null) + hashCode = hashCode * 59 + this.InsertHeadersConfig.GetHashCode(); + if (this.RemoveHeadersConfig != null) + hashCode = hashCode * 59 + this.RemoveHeadersConfig.GetHashCode(); return hashCode; } } diff --git a/Services/Elb/V3/Model/UpdateRemoveHeaderConfig.cs b/Services/Elb/V3/Model/UpdateRemoveHeaderConfig.cs new file mode 100644 index 000000000..94091ad63 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateRemoveHeaderConfig.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数。 + /// + public class UpdateRemoveHeaderConfig + { + + /// + /// 被移除的请求头的参数名。取值范围: 1-40个字符(不区分大小写)。 支持字母a-z,数字,短划线-和下划线_。 不能移除以下请求头参数: connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority、x-forwarded-host、x-forwarded-for、x-forwarded-for-port、x-forwarded-tls-certificate-id、x-forwarded-tls-protocol、x-forwarded-tls-cipher、x-forwarded-elb-ip、x-forwarded-port、x-forwarded-elb-id、x-forwarded-elb-vip、x-real-ip、x-forwarded-proto、x-nuwa-trace-ne-in、x-nuwa-trace-ne-out + /// + [JsonProperty("key", NullValueHandling = NullValueHandling.Ignore)] + public string Key { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateRemoveHeaderConfig {\n"); + sb.Append(" key: ").Append(Key).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateRemoveHeaderConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateRemoveHeaderConfig input) + { + if (input == null) + return false; + + return + ( + this.Key == input.Key || + (this.Key != null && + this.Key.Equals(input.Key)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Key != null) + hashCode = hashCode * 59 + this.Key.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateRemoveHeadersConfig.cs b/Services/Elb/V3/Model/UpdateRemoveHeadersConfig.cs new file mode 100644 index 000000000..7e1e87081 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateRemoveHeadersConfig.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 要移除的请求头参数列表。 + /// + public class UpdateRemoveHeadersConfig + { + + /// + /// 要移除的请求头参数列表。 + /// + [JsonProperty("configs", NullValueHandling = NullValueHandling.Ignore)] + public List Configs { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateRemoveHeadersConfig {\n"); + sb.Append(" configs: ").Append(Configs).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateRemoveHeadersConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateRemoveHeadersConfig input) + { + if (input == null) + return false; + + return + ( + this.Configs == input.Configs || + this.Configs != null && + input.Configs != null && + this.Configs.SequenceEqual(input.Configs) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Configs != null) + hashCode = hashCode * 59 + this.Configs.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateRewriteUrlConfig.cs b/Services/Elb/V3/Model/UpdateRewriteUrlConfig.cs new file mode 100644 index 000000000..ce44dc170 --- /dev/null +++ b/Services/Elb/V3/Model/UpdateRewriteUrlConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// URL重定向配置。当action为REDIRECT_TO_POOL的时候生效。 + /// + public class UpdateRewriteUrlConfig + { + + /// + /// 重定向的域名。取值只能包含英文字母、数字、“-”、“.”,必须以字母、数字开头。 默认值${host},表示继承原值(即与被重写请求host保持一致)。 + /// + [JsonProperty("host", NullValueHandling = NullValueHandling.Ignore)] + public string Host { get; set; } + + /// + /// 重定向的请求路径。 取值只能包含英文字母、数字、_~';@^-%#&$.+?,=!:|/(),且必须以\"/\"开头。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认值${path}表示继承原值(即与被重写请求保持一致)。 + /// + [JsonProperty("path", NullValueHandling = NullValueHandling.Ignore)] + public string Path { get; set; } + + /// + /// 重定向的查询字符串。取值只能包含英文字母、数字和特殊字符:!$&'()+,-./:;=?@^_`。字母区分大小写。其中$1-$9会匹配请求url通配符星号(),当正则匹配分组小于指定数字,则$指定数字结果为空。$后面跟字母,匹配结果均为空,直到下一个特殊字符出现,例如$abc#123,则匹配结果为#123;$后面跟特殊字符则直接输出特殊字符,例如$#匹配结果为$#。 默认${query},表示继承原值(即与被重写请求保持一致)。 + /// + [JsonProperty("query", NullValueHandling = NullValueHandling.Ignore)] + public string Query { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateRewriteUrlConfig {\n"); + sb.Append(" host: ").Append(Host).Append("\n"); + sb.Append(" path: ").Append(Path).Append("\n"); + sb.Append(" query: ").Append(Query).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateRewriteUrlConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateRewriteUrlConfig input) + { + if (input == null) + return false; + + return + ( + this.Host == input.Host || + (this.Host != null && + this.Host.Equals(input.Host)) + ) && + ( + this.Path == input.Path || + (this.Path != null && + this.Path.Equals(input.Path)) + ) && + ( + this.Query == input.Query || + (this.Query != null && + this.Query.Equals(input.Query)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Host != null) + hashCode = hashCode * 59 + this.Host.GetHashCode(); + if (this.Path != null) + hashCode = hashCode * 59 + this.Path.GetHashCode(); + if (this.Query != null) + hashCode = hashCode * 59 + this.Query.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Elb/V3/Model/UpdateRuleCondition.cs b/Services/Elb/V3/Model/UpdateRuleCondition.cs index df9e81a14..ea84be99a 100644 --- a/Services/Elb/V3/Model/UpdateRuleCondition.cs +++ b/Services/Elb/V3/Model/UpdateRuleCondition.cs @@ -11,7 +11,7 @@ namespace HuaweiCloud.SDK.Elb.V3.Model { /// - /// + /// 转发到主机组配置 /// public class UpdateRuleCondition { diff --git a/Services/Elb/V3/Model/UpdateTrafficLimitConfig.cs b/Services/Elb/V3/Model/UpdateTrafficLimitConfig.cs new file mode 100644 index 000000000..bcdf3446b --- /dev/null +++ b/Services/Elb/V3/Model/UpdateTrafficLimitConfig.cs @@ -0,0 +1,105 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Elb.V3.Model +{ + /// + /// 转发策略限速的配置。 + /// + public class UpdateTrafficLimitConfig + { + + /// + /// 转发策略整体限速。取值: 0-100000s。0表示不限速 + /// + [JsonProperty("qps", NullValueHandling = NullValueHandling.Ignore)] + public int? Qps { get; set; } + + /// + /// 对转发策略单源进行限速。 quic监听器下转发策略不支持配置单源限速,指定该字段时,赋值可以为0或者为null 取值: 0-100000s。0表示不限速,如果qps不为0,per_ip_qps需要小于qps。 + /// + [JsonProperty("per_source_ip_qps", NullValueHandling = NullValueHandling.Ignore)] + public int? PerSourceIpQps { get; set; } + + /// + /// 对转发策略单源进行限速。取值: 0-100000s。当qps超限的时候,不返回503,支持允许局部突增burst大小的请求。 + /// + [JsonProperty("burst", NullValueHandling = NullValueHandling.Ignore)] + public int? Burst { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UpdateTrafficLimitConfig {\n"); + sb.Append(" qps: ").Append(Qps).Append("\n"); + sb.Append(" perSourceIpQps: ").Append(PerSourceIpQps).Append("\n"); + sb.Append(" burst: ").Append(Burst).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UpdateTrafficLimitConfig); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UpdateTrafficLimitConfig input) + { + if (input == null) + return false; + + return + ( + this.Qps == input.Qps || + (this.Qps != null && + this.Qps.Equals(input.Qps)) + ) && + ( + this.PerSourceIpQps == input.PerSourceIpQps || + (this.PerSourceIpQps != null && + this.PerSourceIpQps.Equals(input.PerSourceIpQps)) + ) && + ( + this.Burst == input.Burst || + (this.Burst != null && + this.Burst.Equals(input.Burst)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Qps != null) + hashCode = hashCode * 59 + this.Qps.GetHashCode(); + if (this.PerSourceIpQps != null) + hashCode = hashCode * 59 + this.PerSourceIpQps.GetHashCode(); + if (this.Burst != null) + hashCode = hashCode * 59 + this.Burst.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Eps/Eps.csproj b/Services/Eps/Eps.csproj index 883767e9b..37db6a9b3 100644 --- a/Services/Eps/Eps.csproj +++ b/Services/Eps/Eps.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Eps - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Evs/Evs.csproj b/Services/Evs/Evs.csproj index 6a27b3dab..a9e6749de 100644 --- a/Services/Evs/Evs.csproj +++ b/Services/Evs/Evs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Evs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Evs/V2/EvsAsyncClient.cs b/Services/Evs/V2/EvsAsyncClient.cs index a4cc011d5..0d340e8bc 100644 --- a/Services/Evs/V2/EvsAsyncClient.cs +++ b/Services/Evs/V2/EvsAsyncClient.cs @@ -70,6 +70,30 @@ public AsyncInvoker BatchDeleteVolumeTagsAsyncInv return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); } + /// + /// 修改云硬盘计费模式 + /// + /// 将挂载状态下的云硬盘的计费模式有按需转成包周期,且到期时间和挂载的虚拟机保持一致。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ChangeVolumeChargeModeAsync(ChangeVolumeChargeModeRequest changeVolumeChargeModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/change-charge-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", changeVolumeChargeModeRequest); + var response = await DoHttpRequestAsync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public AsyncInvoker ChangeVolumeChargeModeAsyncInvoker(ChangeVolumeChargeModeRequest changeVolumeChargeModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/change-charge-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", changeVolumeChargeModeRequest); + return new AsyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + /// /// 接受云硬盘过户 /// @@ -660,6 +684,39 @@ public AsyncInvoker ShowVolumeTagsAsyncInvoker(ShowVolum return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 退订包周期计费模式的云硬盘 + /// + /// 退订包周期计费模式的云硬盘,有如下约束: + /// - 系统盘、启动盘不可使用当前接口退订,必须和弹性云服务器一起退订 + /// - 接口的请求body体最多可以传60个云硬盘id + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UnsubscribePostpaidVolumeAsync(UnsubscribePostpaidVolumeRequest unsubscribePostpaidVolumeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/unsubscribe", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", unsubscribePostpaidVolumeRequest); + var response = await DoHttpRequestAsync("POST", request); + var unsubscribePostpaidVolumeResponse = JsonUtils.DeSerializeNull(response); + unsubscribePostpaidVolumeResponse.Body = JsonUtils.DeSerializeList(response); + return unsubscribePostpaidVolumeResponse; + } + + public AsyncInvoker UnsubscribePostpaidVolumeAsyncInvoker(UnsubscribePostpaidVolumeRequest unsubscribePostpaidVolumeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/unsubscribe", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", unsubscribePostpaidVolumeRequest); + return new AsyncInvoker(this, "POST", request, response => + { + var unsubscribePostpaidVolumeResponse = JsonUtils.DeSerializeNull(response); + unsubscribePostpaidVolumeResponse.Body = JsonUtils.DeSerializeList(response); + return unsubscribePostpaidVolumeResponse; + }); + } + /// /// 更新云硬盘快照 /// diff --git a/Services/Evs/V2/EvsClient.cs b/Services/Evs/V2/EvsClient.cs index 137ac379a..abaf71a9f 100644 --- a/Services/Evs/V2/EvsClient.cs +++ b/Services/Evs/V2/EvsClient.cs @@ -69,6 +69,30 @@ public SyncInvoker BatchDeleteVolumeTagsInvoker(B return new SyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); } + /// + /// 修改云硬盘计费模式 + /// + /// 将挂载状态下的云硬盘的计费模式有按需转成包周期,且到期时间和挂载的虚拟机保持一致。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ChangeVolumeChargeModeResponse ChangeVolumeChargeMode(ChangeVolumeChargeModeRequest changeVolumeChargeModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/change-charge-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", changeVolumeChargeModeRequest); + var response = DoHttpRequestSync("POST", request); + return JsonUtils.DeSerializeNull(response); + } + + public SyncInvoker ChangeVolumeChargeModeInvoker(ChangeVolumeChargeModeRequest changeVolumeChargeModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/change-charge-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", changeVolumeChargeModeRequest); + return new SyncInvoker(this, "POST", request, JsonUtils.DeSerializeNull); + } + /// /// 接受云硬盘过户 /// @@ -659,6 +683,39 @@ public SyncInvoker ShowVolumeTagsInvoker(ShowVolumeTagsR return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 退订包周期计费模式的云硬盘 + /// + /// 退订包周期计费模式的云硬盘,有如下约束: + /// - 系统盘、启动盘不可使用当前接口退订,必须和弹性云服务器一起退订 + /// - 接口的请求body体最多可以传60个云硬盘id + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UnsubscribePostpaidVolumeResponse UnsubscribePostpaidVolume(UnsubscribePostpaidVolumeRequest unsubscribePostpaidVolumeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/unsubscribe", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", unsubscribePostpaidVolumeRequest); + var response = DoHttpRequestSync("POST", request); + var unsubscribePostpaidVolumeResponse = JsonUtils.DeSerializeNull(response); + unsubscribePostpaidVolumeResponse.Body = JsonUtils.DeSerializeList(response); + return unsubscribePostpaidVolumeResponse; + } + + public SyncInvoker UnsubscribePostpaidVolumeInvoker(UnsubscribePostpaidVolumeRequest unsubscribePostpaidVolumeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/cloudvolumes/unsubscribe", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json;charset=UTF-8", unsubscribePostpaidVolumeRequest); + return new SyncInvoker(this, "POST", request, response => + { + var unsubscribePostpaidVolumeResponse = JsonUtils.DeSerializeNull(response); + unsubscribePostpaidVolumeResponse.Body = JsonUtils.DeSerializeList(response); + return unsubscribePostpaidVolumeResponse; + }); + } + /// /// 更新云硬盘快照 /// diff --git a/Services/Evs/V2/Model/BssParam2.cs b/Services/Evs/V2/Model/BssParam2.cs new file mode 100644 index 000000000..d5e953f87 --- /dev/null +++ b/Services/Evs/V2/Model/BssParam2.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// 包周期参数: 1. 包年包月的计量属性 2. 包年包月的数量 + /// + public class BssParam2 + { + + /// + /// 云硬盘的计费模式转成包周期后,是否自动支付 + /// + [JsonProperty("is_auto_pay", NullValueHandling = NullValueHandling.Ignore)] + public bool? IsAutoPay { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class BssParam2 {\n"); + sb.Append(" isAutoPay: ").Append(IsAutoPay).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as BssParam2); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(BssParam2 input) + { + if (input == null) + return false; + + return + ( + this.IsAutoPay == input.IsAutoPay || + (this.IsAutoPay != null && + this.IsAutoPay.Equals(input.IsAutoPay)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.IsAutoPay != null) + hashCode = hashCode * 59 + this.IsAutoPay.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/ChangeVolumeChargeModeRequest.cs b/Services/Evs/V2/Model/ChangeVolumeChargeModeRequest.cs new file mode 100644 index 000000000..d4c2e7ed2 --- /dev/null +++ b/Services/Evs/V2/Model/ChangeVolumeChargeModeRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// Request Object + /// + public class ChangeVolumeChargeModeRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public ChangeVolumeChargeModeRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ChangeVolumeChargeModeRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ChangeVolumeChargeModeRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ChangeVolumeChargeModeRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/ChangeVolumeChargeModeRequestBody.cs b/Services/Evs/V2/Model/ChangeVolumeChargeModeRequestBody.cs new file mode 100644 index 000000000..0ae2d51fb --- /dev/null +++ b/Services/Evs/V2/Model/ChangeVolumeChargeModeRequestBody.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// This is a auto create Body Object + /// + public class ChangeVolumeChargeModeRequestBody + { + + /// + /// 要修改计费模式的云硬盘id列表,可以填写多个 + /// + [JsonProperty("volume_ids", NullValueHandling = NullValueHandling.Ignore)] + public List VolumeIds { get; set; } + + /// + /// 云硬盘所挂载的虚拟机id, 如果volume_ids中没有多挂载的共享云硬盘,则此参数可无需填写。 + /// + [JsonProperty("server_id", NullValueHandling = NullValueHandling.Ignore)] + public string ServerId { get; set; } + + /// + /// + /// + [JsonProperty("bss_param", NullValueHandling = NullValueHandling.Ignore)] + public BssParam2 BssParam { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ChangeVolumeChargeModeRequestBody {\n"); + sb.Append(" volumeIds: ").Append(VolumeIds).Append("\n"); + sb.Append(" serverId: ").Append(ServerId).Append("\n"); + sb.Append(" bssParam: ").Append(BssParam).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ChangeVolumeChargeModeRequestBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ChangeVolumeChargeModeRequestBody input) + { + if (input == null) + return false; + + return + ( + this.VolumeIds == input.VolumeIds || + this.VolumeIds != null && + input.VolumeIds != null && + this.VolumeIds.SequenceEqual(input.VolumeIds) + ) && + ( + this.ServerId == input.ServerId || + (this.ServerId != null && + this.ServerId.Equals(input.ServerId)) + ) && + ( + this.BssParam == input.BssParam || + (this.BssParam != null && + this.BssParam.Equals(input.BssParam)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.VolumeIds != null) + hashCode = hashCode * 59 + this.VolumeIds.GetHashCode(); + if (this.ServerId != null) + hashCode = hashCode * 59 + this.ServerId.GetHashCode(); + if (this.BssParam != null) + hashCode = hashCode * 59 + this.BssParam.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/ChangeVolumeChargeModeResponse.cs b/Services/Evs/V2/Model/ChangeVolumeChargeModeResponse.cs new file mode 100644 index 000000000..b95d41103 --- /dev/null +++ b/Services/Evs/V2/Model/ChangeVolumeChargeModeResponse.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// Response Object + /// + public class ChangeVolumeChargeModeResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public string Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ChangeVolumeChargeModeResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ChangeVolumeChargeModeResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ChangeVolumeChargeModeResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/UnsubscribePostpaidVolumeRequest.cs b/Services/Evs/V2/Model/UnsubscribePostpaidVolumeRequest.cs new file mode 100644 index 000000000..6f6e7bc4d --- /dev/null +++ b/Services/Evs/V2/Model/UnsubscribePostpaidVolumeRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// Request Object + /// + public class UnsubscribePostpaidVolumeRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public UnsubscribeVolumeRequestBody Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UnsubscribePostpaidVolumeRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UnsubscribePostpaidVolumeRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UnsubscribePostpaidVolumeRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/UnsubscribePostpaidVolumeResponse.cs b/Services/Evs/V2/Model/UnsubscribePostpaidVolumeResponse.cs new file mode 100644 index 000000000..0da857b84 --- /dev/null +++ b/Services/Evs/V2/Model/UnsubscribePostpaidVolumeResponse.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// Response Object + /// + public class UnsubscribePostpaidVolumeResponse : SdkResponse + { + + /// + /// + /// + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public List Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UnsubscribePostpaidVolumeResponse {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UnsubscribePostpaidVolumeResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UnsubscribePostpaidVolumeResponse input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + this.Body != null && + input.Body != null && + this.Body.SequenceEqual(input.Body) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/UnsubscribeVolume.cs b/Services/Evs/V2/Model/UnsubscribeVolume.cs new file mode 100644 index 000000000..508e34e13 --- /dev/null +++ b/Services/Evs/V2/Model/UnsubscribeVolume.cs @@ -0,0 +1,119 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// 包周期云硬盘退订的结果 + /// + public class UnsubscribeVolume + { + + /// + /// 卷id对应的结果 + /// + [JsonProperty("volume_id", NullValueHandling = NullValueHandling.Ignore)] + public string VolumeId { get; set; } + + /// + /// 卷id对应的退订订单id,如果是已到期的云硬盘退订,则不显示此字段。 + /// + [JsonProperty("order_id", NullValueHandling = NullValueHandling.Ignore)] + public string OrderId { get; set; } + + /// + /// volume_id对应的退订结果,只有SUCCESS 和 FAIL两种结果。 + /// + [JsonProperty("result", NullValueHandling = NullValueHandling.Ignore)] + public string Result { get; set; } + + /// + /// 当result为FAIL时,此字段显示具体的失败原因。 result为SUCCESS时,不显示此字段。 + /// + [JsonProperty("fail_reason", NullValueHandling = NullValueHandling.Ignore)] + public string FailReason { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UnsubscribeVolume {\n"); + sb.Append(" volumeId: ").Append(VolumeId).Append("\n"); + sb.Append(" orderId: ").Append(OrderId).Append("\n"); + sb.Append(" result: ").Append(Result).Append("\n"); + sb.Append(" failReason: ").Append(FailReason).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UnsubscribeVolume); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UnsubscribeVolume input) + { + if (input == null) + return false; + + return + ( + this.VolumeId == input.VolumeId || + (this.VolumeId != null && + this.VolumeId.Equals(input.VolumeId)) + ) && + ( + this.OrderId == input.OrderId || + (this.OrderId != null && + this.OrderId.Equals(input.OrderId)) + ) && + ( + this.Result == input.Result || + (this.Result != null && + this.Result.Equals(input.Result)) + ) && + ( + this.FailReason == input.FailReason || + (this.FailReason != null && + this.FailReason.Equals(input.FailReason)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.VolumeId != null) + hashCode = hashCode * 59 + this.VolumeId.GetHashCode(); + if (this.OrderId != null) + hashCode = hashCode * 59 + this.OrderId.GetHashCode(); + if (this.Result != null) + hashCode = hashCode * 59 + this.Result.GetHashCode(); + if (this.FailReason != null) + hashCode = hashCode * 59 + this.FailReason.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/UnsubscribeVolumeRequestBody.cs b/Services/Evs/V2/Model/UnsubscribeVolumeRequestBody.cs new file mode 100644 index 000000000..b6f856c7c --- /dev/null +++ b/Services/Evs/V2/Model/UnsubscribeVolumeRequestBody.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// 退订包周期云硬盘的请求body体 + /// + public class UnsubscribeVolumeRequestBody + { + + /// + /// 退订包周期云硬盘的结果。 + /// + [JsonProperty("volume_ids", NullValueHandling = NullValueHandling.Ignore)] + public List VolumeIds { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UnsubscribeVolumeRequestBody {\n"); + sb.Append(" volumeIds: ").Append(VolumeIds).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UnsubscribeVolumeRequestBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UnsubscribeVolumeRequestBody input) + { + if (input == null) + return false; + + return + ( + this.VolumeIds == input.VolumeIds || + this.VolumeIds != null && + input.VolumeIds != null && + this.VolumeIds.SequenceEqual(input.VolumeIds) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.VolumeIds != null) + hashCode = hashCode * 59 + this.VolumeIds.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Evs/V2/Model/UnsubscribeVolumeResponseBody.cs b/Services/Evs/V2/Model/UnsubscribeVolumeResponseBody.cs new file mode 100644 index 000000000..fb1b24efa --- /dev/null +++ b/Services/Evs/V2/Model/UnsubscribeVolumeResponseBody.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Evs.V2.Model +{ + /// + /// 退订包周期云硬盘的响应body体 + /// + public class UnsubscribeVolumeResponseBody + { + + /// + /// 退订包周期云硬盘的结果。 + /// + [JsonProperty("results", NullValueHandling = NullValueHandling.Ignore)] + public List Results { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class UnsubscribeVolumeResponseBody {\n"); + sb.Append(" results: ").Append(Results).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as UnsubscribeVolumeResponseBody); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(UnsubscribeVolumeResponseBody input) + { + if (input == null) + return false; + + return + ( + this.Results == input.Results || + this.Results != null && + input.Results != null && + this.Results.SequenceEqual(input.Results) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Results != null) + hashCode = hashCode * 59 + this.Results.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Frs/Frs.csproj b/Services/Frs/Frs.csproj index d53a22464..5ad670760 100644 --- a/Services/Frs/Frs.csproj +++ b/Services/Frs/Frs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Frs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/FunctionGraph/FunctionGraph.csproj b/Services/FunctionGraph/FunctionGraph.csproj index 0341b1b53..ac2ed7171 100644 --- a/Services/FunctionGraph/FunctionGraph.csproj +++ b/Services/FunctionGraph/FunctionGraph.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.FunctionGraph - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/FunctionGraph/V2/Model/ListWorkflowExecutionsRequest.cs b/Services/FunctionGraph/V2/Model/ListWorkflowExecutionsRequest.cs index db0db5635..0d11f7433 100644 --- a/Services/FunctionGraph/V2/Model/ListWorkflowExecutionsRequest.cs +++ b/Services/FunctionGraph/V2/Model/ListWorkflowExecutionsRequest.cs @@ -163,6 +163,13 @@ public bool Equals(StatusEnum obj) [JsonProperty("limit", NullValueHandling = NullValueHandling.Ignore)] public int? Limit { get; set; } + /// + /// 分页查询,分页的偏移量,默认值为0 offset小于0时,按照0处理 + /// + [SDKProperty("offset", IsQuery = true)] + [JsonProperty("offset", NullValueHandling = NullValueHandling.Ignore)] + public int? Offset { get; set; } + /// /// 需要过滤的流程实例状态 /// @@ -194,6 +201,7 @@ public override string ToString() sb.Append("class ListWorkflowExecutionsRequest {\n"); sb.Append(" workflowId: ").Append(WorkflowId).Append("\n"); sb.Append(" limit: ").Append(Limit).Append("\n"); + sb.Append(" offset: ").Append(Offset).Append("\n"); sb.Append(" status: ").Append(Status).Append("\n"); sb.Append(" startTime: ").Append(StartTime).Append("\n"); sb.Append(" endTime: ").Append(EndTime).Append("\n"); @@ -228,6 +236,11 @@ public bool Equals(ListWorkflowExecutionsRequest input) (this.Limit != null && this.Limit.Equals(input.Limit)) ) && + ( + this.Offset == input.Offset || + (this.Offset != null && + this.Offset.Equals(input.Offset)) + ) && ( this.Status == input.Status || (this.Status != null && @@ -257,6 +270,8 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.WorkflowId.GetHashCode(); if (this.Limit != null) hashCode = hashCode * 59 + this.Limit.GetHashCode(); + if (this.Offset != null) + hashCode = hashCode * 59 + this.Offset.GetHashCode(); if (this.Status != null) hashCode = hashCode * 59 + this.Status.GetHashCode(); if (this.StartTime != null) diff --git a/Services/GaussDB/GaussDB.csproj b/Services/GaussDB/GaussDB.csproj index fced75d76..210d6610d 100644 --- a/Services/GaussDB/GaussDB.csproj +++ b/Services/GaussDB/GaussDB.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.GaussDB - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/GaussDBforNoSQL/GaussDBforNoSQL.csproj b/Services/GaussDBforNoSQL/GaussDBforNoSQL.csproj index 24e6545fe..ccf9b94f2 100644 --- a/Services/GaussDBforNoSQL/GaussDBforNoSQL.csproj +++ b/Services/GaussDBforNoSQL/GaussDBforNoSQL.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.GaussDBforNoSQL - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/GaussDBforopenGauss/GaussDBforopenGauss.csproj b/Services/GaussDBforopenGauss/GaussDBforopenGauss.csproj index 18101fbf1..d6c7d7aec 100644 --- a/Services/GaussDBforopenGauss/GaussDBforopenGauss.csproj +++ b/Services/GaussDBforopenGauss/GaussDBforopenGauss.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.GaussDBforopenGauss - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Geip/Geip.csproj b/Services/Geip/Geip.csproj index a48ad3f7e..326fed6e7 100644 --- a/Services/Geip/Geip.csproj +++ b/Services/Geip/Geip.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Geip - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Iam/Iam.csproj b/Services/Iam/Iam.csproj index 96930c110..a4baa854b 100644 --- a/Services/Iam/Iam.csproj +++ b/Services/Iam/Iam.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Iam - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Iam/V3/Model/AgencyResult.cs b/Services/Iam/V3/Model/AgencyResult.cs index 6442f6699..114a2fe3c 100644 --- a/Services/Iam/V3/Model/AgencyResult.cs +++ b/Services/Iam/V3/Model/AgencyResult.cs @@ -34,12 +34,6 @@ public class AgencyResult [JsonProperty("domain_id", NullValueHandling = NullValueHandling.Ignore)] public string DomainId { get; set; } - /// - /// 委托的期限。取值为\"FOREVER\"或“null”表示委托的期限为永久,取值为\"ONEDAY\"表示委托的期限为一天。 - /// - [JsonProperty("duration", NullValueHandling = NullValueHandling.Ignore)] - public string Duration { get; set; } - /// /// 委托过期时间。“null”表示不过期。 /// @@ -82,7 +76,6 @@ public override string ToString() sb.Append(" createTime: ").Append(CreateTime).Append("\n"); sb.Append(" description: ").Append(Description).Append("\n"); sb.Append(" domainId: ").Append(DomainId).Append("\n"); - sb.Append(" duration: ").Append(Duration).Append("\n"); sb.Append(" expireTime: ").Append(ExpireTime).Append("\n"); sb.Append(" id: ").Append(Id).Append("\n"); sb.Append(" name: ").Append(Name).Append("\n"); @@ -124,11 +117,6 @@ public bool Equals(AgencyResult input) (this.DomainId != null && this.DomainId.Equals(input.DomainId)) ) && - ( - this.Duration == input.Duration || - (this.Duration != null && - this.Duration.Equals(input.Duration)) - ) && ( this.ExpireTime == input.ExpireTime || (this.ExpireTime != null && @@ -170,8 +158,6 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.Description.GetHashCode(); if (this.DomainId != null) hashCode = hashCode * 59 + this.DomainId.GetHashCode(); - if (this.Duration != null) - hashCode = hashCode * 59 + this.Duration.GetHashCode(); if (this.ExpireTime != null) hashCode = hashCode * 59 + this.ExpireTime.GetHashCode(); if (this.Id != null) diff --git a/Services/Iam/V3/Model/CustomPolicy.cs b/Services/Iam/V3/Model/CustomPolicy.cs new file mode 100644 index 000000000..907e15225 --- /dev/null +++ b/Services/Iam/V3/Model/CustomPolicy.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Iam.V3.Model +{ + /// + /// + /// + public class CustomPolicy + { + + /// + /// 权限版本号,创建自定义策略时,该字段值填为“1.1”。 > - 1.0:系统预置的角色。以服务为粒度,提供有限的服务相关角色用于授权。 > - 1.1:策略。IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。 + /// + [JsonProperty("Version", NullValueHandling = NullValueHandling.Ignore)] + public string Version { get; set; } + + /// + /// 授权语句,描述自定义策略的具体内容。 + /// + [JsonProperty("Statement", NullValueHandling = NullValueHandling.Ignore)] + public List Statement { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CustomPolicy {\n"); + sb.Append(" version: ").Append(Version).Append("\n"); + sb.Append(" statement: ").Append(Statement).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CustomPolicy); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CustomPolicy input) + { + if (input == null) + return false; + + return + ( + this.Version == input.Version || + (this.Version != null && + this.Version.Equals(input.Version)) + ) && + ( + this.Statement == input.Statement || + this.Statement != null && + input.Statement != null && + this.Statement.SequenceEqual(input.Statement) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Version != null) + hashCode = hashCode * 59 + this.Version.GetHashCode(); + if (this.Statement != null) + hashCode = hashCode * 59 + this.Statement.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Iam/V3/Model/CustomStatement.cs b/Services/Iam/V3/Model/CustomStatement.cs new file mode 100644 index 000000000..a842c5375 --- /dev/null +++ b/Services/Iam/V3/Model/CustomStatement.cs @@ -0,0 +1,235 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Iam.V3.Model +{ + /// + /// + /// + public class CustomStatement + { + /// + /// 作用。包含两种:允许(Allow)和拒绝(Deny),既有Allow又有Deny的授权语句时,遵循Deny优先的原则。 + /// + /// 作用。包含两种:允许(Allow)和拒绝(Deny),既有Allow又有Deny的授权语句时,遵循Deny优先的原则。 + [JsonConverter(typeof(EnumClassConverter))] + public class EffectEnum + { + /// + /// Enum ALLOW for value: Allow + /// + public static readonly EffectEnum ALLOW = new EffectEnum("Allow"); + + /// + /// Enum DENY for value: Deny + /// + public static readonly EffectEnum DENY = new EffectEnum("Deny"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "Allow", ALLOW }, + { "Deny", DENY }, + }; + + private string _value; + + public EffectEnum() + { + + } + + public EffectEnum(string value) + { + _value = value; + } + + public static EffectEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as EffectEnum)) + { + return true; + } + + return false; + } + + public bool Equals(EffectEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(EffectEnum a, EffectEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(EffectEnum a, EffectEnum b) + { + return !(a == b); + } + } + + + /// + /// 授权项,指对资源的具体操作权限。 > - 格式为:服务名:资源类型:操作,例:vpc:ports:create。 > - 服务名为产品名称,例如ecs、evs和vpc等,服务名仅支持小写。 资源类型和操作没有大小写,要求支持通配符号*,无需罗列全部授权项。 + /// + [JsonProperty("Action", NullValueHandling = NullValueHandling.Ignore)] + public List Action { get; set; } + + /// + /// 作用。包含两种:允许(Allow)和拒绝(Deny),既有Allow又有Deny的授权语句时,遵循Deny优先的原则。 + /// + [JsonProperty("Effect", NullValueHandling = NullValueHandling.Ignore)] + public EffectEnum Effect { get; set; } + /// + /// + /// + [JsonProperty("Condition", NullValueHandling = NullValueHandling.Ignore)] + public Dictionary>> Condition { get; set; } + + /// + /// 资源。规则如下: > - 可填 * 的五段式:<service-name>:<region>:<account-id>:<resource-type>:<resource-path>,例:\"obs:*:*:bucket:*\"。 > - region字段为*或用户可访问的region。service必须存在且resource属于对应service。 + /// + [JsonProperty("Resource", NullValueHandling = NullValueHandling.Ignore)] + public Object Resource { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CustomStatement {\n"); + sb.Append(" action: ").Append(Action).Append("\n"); + sb.Append(" effect: ").Append(Effect).Append("\n"); + sb.Append(" condition: ").Append(Condition).Append("\n"); + sb.Append(" resource: ").Append(Resource).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as CustomStatement); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(CustomStatement input) + { + if (input == null) + return false; + + return + ( + this.Action == input.Action || + this.Action != null && + input.Action != null && + this.Action.SequenceEqual(input.Action) + ) && + ( + this.Effect == input.Effect || + (this.Effect != null && + this.Effect.Equals(input.Effect)) + ) && + ( + this.Condition == input.Condition || + this.Condition != null && + input.Condition != null && + this.Condition.SequenceEqual(input.Condition) + ) && + ( + this.Resource == input.Resource || + (this.Resource != null && + this.Resource.Equals(input.Resource)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Action != null) + hashCode = hashCode * 59 + this.Action.GetHashCode(); + if (this.Effect != null) + hashCode = hashCode * 59 + this.Effect.GetHashCode(); + if (this.Condition != null) + hashCode = hashCode * 59 + this.Condition.GetHashCode(); + if (this.Resource != null) + hashCode = hashCode * 59 + this.Resource.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Iam/V3/Model/PolicyRoleResult.cs b/Services/Iam/V3/Model/PolicyRoleResult.cs index 613f7acbd..8c91c0ac1 100644 --- a/Services/Iam/V3/Model/PolicyRoleResult.cs +++ b/Services/Iam/V3/Model/PolicyRoleResult.cs @@ -92,7 +92,7 @@ public class PolicyRoleResult /// /// [JsonProperty("policy", NullValueHandling = NullValueHandling.Ignore)] - public ServicePolicy Policy { get; set; } + public CustomPolicy Policy { get; set; } diff --git a/Services/Iam/V3/Model/PolicyStatement.cs b/Services/Iam/V3/Model/PolicyStatement.cs index ef696eb95..bb5a783a1 100644 --- a/Services/Iam/V3/Model/PolicyStatement.cs +++ b/Services/Iam/V3/Model/PolicyStatement.cs @@ -152,7 +152,7 @@ public bool Equals(EffectEnum obj) /// 资源。数组长度不超过10,每个字符串长度不超过128,规则如下: > - 可填 * 的五段式:<service-name>:<region>:<account-id>:<resource-type>:<resource-path>,例:\"obs:*:*:bucket:*\"。 > - region字段为*或用户可访问的region。service必须存在且resource属于对应service。 > - 当该自定义策略为委托自定义策略时,该字段类型为Object,值为:```\"Resource\": {\"uri\": [\"/iam/agencies/07805acaba800fdd4fbdc00b8f888c7c\"]}```。 /// [JsonProperty("Resource", NullValueHandling = NullValueHandling.Ignore)] - public List Resource { get; set; } + public Object Resource { get; set; } @@ -206,9 +206,8 @@ public bool Equals(PolicyStatement input) ) && ( this.Resource == input.Resource || - this.Resource != null && - input.Resource != null && - this.Resource.SequenceEqual(input.Resource) + (this.Resource != null && + this.Resource.Equals(input.Resource)) ); } diff --git a/Services/Iam/V3/Model/ServiceStatement.cs b/Services/Iam/V3/Model/ServiceStatement.cs index 4a6c635b0..ae6fd91bd 100644 --- a/Services/Iam/V3/Model/ServiceStatement.cs +++ b/Services/Iam/V3/Model/ServiceStatement.cs @@ -152,7 +152,7 @@ public bool Equals(EffectEnum obj) /// 资源。规则如下: > - 可填 * 的五段式:<service-name>:<region>:<account-id>:<resource-type>:<resource-path>,例:\"obs:*:*:bucket:*\"。 > - region字段为*或用户可访问的region。service必须存在且resource属于对应service。 /// [JsonProperty("Resource", NullValueHandling = NullValueHandling.Ignore)] - public Object Resource { get; set; } + public List Resource { get; set; } @@ -207,8 +207,9 @@ public bool Equals(ServiceStatement input) ) && ( this.Resource == input.Resource || - (this.Resource != null && - this.Resource.Equals(input.Resource)) + this.Resource != null && + input.Resource != null && + this.Resource.SequenceEqual(input.Resource) ); } diff --git a/Services/Image/Image.csproj b/Services/Image/Image.csproj index e8b7b21e4..8af43a32a 100644 --- a/Services/Image/Image.csproj +++ b/Services/Image/Image.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Image - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/ImageSearch/ImageSearch.csproj b/Services/ImageSearch/ImageSearch.csproj index a85364ae4..245c2c3c7 100644 --- a/Services/ImageSearch/ImageSearch.csproj +++ b/Services/ImageSearch/ImageSearch.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.ImageSearch - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ims/Ims.csproj b/Services/Ims/Ims.csproj index ca9e1af52..a0625f757 100644 --- a/Services/Ims/Ims.csproj +++ b/Services/Ims/Ims.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ims - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ims/V2/Model/ListImagesRequest.cs b/Services/Ims/V2/Model/ListImagesRequest.cs index 3dee24d0d..cc0f73b5c 100644 --- a/Services/Ims/V2/Model/ListImagesRequest.cs +++ b/Services/Ims/V2/Model/ListImagesRequest.cs @@ -560,6 +560,11 @@ public class PlatformEnum /// public static readonly PlatformEnum EULEROS = new PlatformEnum("EulerOS"); + /// + /// Enum HUAWEI_CLOUD_EULEROS for value: Huawei Cloud EulerOS + /// + public static readonly PlatformEnum HUAWEI_CLOUD_EULEROS = new PlatformEnum("Huawei Cloud EulerOS"); + private static readonly Dictionary StaticFields = new Dictionary() { @@ -575,6 +580,7 @@ public class PlatformEnum { "Other", OTHER }, { "CoreOS", COREOS }, { "EulerOS", EULEROS }, + { "Huawei Cloud EulerOS", HUAWEI_CLOUD_EULEROS }, }; private string _value; diff --git a/Services/IoTDA/IoTDA.csproj b/Services/IoTDA/IoTDA.csproj index 1738694d6..8fa7eb0d7 100644 --- a/Services/IoTDA/IoTDA.csproj +++ b/Services/IoTDA/IoTDA.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.IoTDA - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ivs/Ivs.csproj b/Services/Ivs/Ivs.csproj index ad6e8fea7..22dac0cca 100644 --- a/Services/Ivs/Ivs.csproj +++ b/Services/Ivs/Ivs.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ivs - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Kafka/Kafka.csproj b/Services/Kafka/Kafka.csproj index def20e2c0..8732b660e 100644 --- a/Services/Kafka/Kafka.csproj +++ b/Services/Kafka/Kafka.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Kafka - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Kms/Kms.csproj b/Services/Kms/Kms.csproj index 0f176137d..e80cc3366 100644 --- a/Services/Kms/Kms.csproj +++ b/Services/Kms/Kms.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Kms - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Kms/V2/Model/KeyDetails.cs b/Services/Kms/V2/Model/KeyDetails.cs index 7aab541dc..05da79760 100644 --- a/Services/Kms/V2/Model/KeyDetails.cs +++ b/Services/Kms/V2/Model/KeyDetails.cs @@ -496,12 +496,6 @@ public bool Equals(OriginEnum obj) [JsonProperty("keystore_id", NullValueHandling = NullValueHandling.Ignore)] public string KeystoreId { get; set; } - /// - /// 密钥在加密机中的标签 - /// - [JsonProperty("key_label", NullValueHandling = NullValueHandling.Ignore)] - public string KeyLabel { get; set; } - /// @@ -528,7 +522,6 @@ public override string ToString() sb.Append(" keyRotationEnabled: ").Append(KeyRotationEnabled).Append("\n"); sb.Append(" sysEnterpriseProjectId: ").Append(SysEnterpriseProjectId).Append("\n"); sb.Append(" keystoreId: ").Append(KeystoreId).Append("\n"); - sb.Append(" keyLabel: ").Append(KeyLabel).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -634,11 +627,6 @@ public bool Equals(KeyDetails input) this.KeystoreId == input.KeystoreId || (this.KeystoreId != null && this.KeystoreId.Equals(input.KeystoreId)) - ) && - ( - this.KeyLabel == input.KeyLabel || - (this.KeyLabel != null && - this.KeyLabel.Equals(input.KeyLabel)) ); } @@ -684,8 +672,6 @@ public override int GetHashCode() hashCode = hashCode * 59 + this.SysEnterpriseProjectId.GetHashCode(); if (this.KeystoreId != null) hashCode = hashCode * 59 + this.KeystoreId.GetHashCode(); - if (this.KeyLabel != null) - hashCode = hashCode * 59 + this.KeyLabel.GetHashCode(); return hashCode; } } diff --git a/Services/Kps/Kps.csproj b/Services/Kps/Kps.csproj index 52ee685af..a149bb897 100644 --- a/Services/Kps/Kps.csproj +++ b/Services/Kps/Kps.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Kps - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Live/Live.csproj b/Services/Live/Live.csproj index 242f75fb9..fe2d62baa 100644 --- a/Services/Live/Live.csproj +++ b/Services/Live/Live.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Live - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Live/V2/LiveAsyncClient.cs b/Services/Live/V2/LiveAsyncClient.cs index c920272a2..6acb824ca 100644 --- a/Services/Live/V2/LiveAsyncClient.cs +++ b/Services/Live/V2/LiveAsyncClient.cs @@ -388,6 +388,34 @@ public AsyncInvoker ShowUpBandwidthAsyncInvoker(ShowUpB return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询播放域名下的流数据 + /// + /// 查询播放域名下的监控数据,根据输入时间点,返回查询该时间点所有流的带宽、在线人数、协议。 + /// + /// 返回的数据粒度为1分钟。 + /// + /// 最大查询周期7天,数据延迟5分钟。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ListPlayDomainStreamInfoAsync(ListPlayDomainStreamInfoRequest listPlayDomainStreamInfoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/stats/stream/play-info", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listPlayDomainStreamInfoRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ListPlayDomainStreamInfoAsyncInvoker(ListPlayDomainStreamInfoRequest listPlayDomainStreamInfoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/stats/stream/play-info", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listPlayDomainStreamInfoRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询推流码率数据接口 /// diff --git a/Services/Live/V2/LiveClient.cs b/Services/Live/V2/LiveClient.cs index d11b4f9fd..7868f86f9 100644 --- a/Services/Live/V2/LiveClient.cs +++ b/Services/Live/V2/LiveClient.cs @@ -387,6 +387,34 @@ public SyncInvoker ShowUpBandwidthInvoker(ShowUpBandwid return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询播放域名下的流数据 + /// + /// 查询播放域名下的监控数据,根据输入时间点,返回查询该时间点所有流的带宽、在线人数、协议。 + /// + /// 返回的数据粒度为1分钟。 + /// + /// 最大查询周期7天,数据延迟5分钟。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ListPlayDomainStreamInfoResponse ListPlayDomainStreamInfo(ListPlayDomainStreamInfoRequest listPlayDomainStreamInfoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/stats/stream/play-info", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listPlayDomainStreamInfoRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ListPlayDomainStreamInfoInvoker(ListPlayDomainStreamInfoRequest listPlayDomainStreamInfoRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v2/{project_id}/stats/stream/play-info", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", listPlayDomainStreamInfoRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询推流码率数据接口 /// diff --git a/Services/Live/V2/Model/ListPlayDomainStreamInfoRequest.cs b/Services/Live/V2/Model/ListPlayDomainStreamInfoRequest.cs new file mode 100644 index 000000000..016615adb --- /dev/null +++ b/Services/Live/V2/Model/ListPlayDomainStreamInfoRequest.cs @@ -0,0 +1,94 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Live.V2.Model +{ + /// + /// Request Object + /// + public class ListPlayDomainStreamInfoRequest + { + + /// + /// 播放域名列表,最多支持查询10个域名,多个域名以逗号分隔。 如果不传入域名,则查询租户下所有播放域名的流数据。 + /// + [SDKProperty("play_domains", IsQuery = true)] + [JsonProperty("play_domains", NullValueHandling = NullValueHandling.Ignore)] + public List PlayDomains { get; set; } + + /// + /// 查询数据的时间点,精确到分钟。 日期格式按照ISO8601表示法,并使用UTC时间。 格式为:YYYY-MM-DDThh:mm:ssZ,最大查询周期七天。 时间必须为时间粒度整时刻点,如:2024-02-02T08:01:00Z。 + /// + [SDKProperty("time", IsQuery = true)] + [JsonProperty("time", NullValueHandling = NullValueHandling.Ignore)] + public string Time { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListPlayDomainStreamInfoRequest {\n"); + sb.Append(" playDomains: ").Append(PlayDomains).Append("\n"); + sb.Append(" time: ").Append(Time).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListPlayDomainStreamInfoRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListPlayDomainStreamInfoRequest input) + { + if (input == null) + return false; + + return + ( + this.PlayDomains == input.PlayDomains || + this.PlayDomains != null && + input.PlayDomains != null && + this.PlayDomains.SequenceEqual(input.PlayDomains) + ) && + ( + this.Time == input.Time || + (this.Time != null && + this.Time.Equals(input.Time)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PlayDomains != null) + hashCode = hashCode * 59 + this.PlayDomains.GetHashCode(); + if (this.Time != null) + hashCode = hashCode * 59 + this.Time.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Live/V2/Model/ListPlayDomainStreamInfoResponse.cs b/Services/Live/V2/Model/ListPlayDomainStreamInfoResponse.cs new file mode 100644 index 000000000..2dcba3f06 --- /dev/null +++ b/Services/Live/V2/Model/ListPlayDomainStreamInfoResponse.cs @@ -0,0 +1,107 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Live.V2.Model +{ + /// + /// Response Object + /// + public class ListPlayDomainStreamInfoResponse : SdkResponse + { + + /// + /// 采样时间。日期格式按照ISO8601表示法,并使用UTC时间。 格式为:YYYY-MM-DDThh:mm:ssZ。 + /// + [JsonProperty("time", NullValueHandling = NullValueHandling.Ignore)] + public string Time { get; set; } + + /// + /// 采样数据列表 + /// + [JsonProperty("data_list", NullValueHandling = NullValueHandling.Ignore)] + public List DataList { get; set; } + + /// + /// + /// + [SDKProperty("X-Request-Id", IsHeader = true)] + [JsonProperty("X-Request-Id", NullValueHandling = NullValueHandling.Ignore)] + public string XRequestId { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ListPlayDomainStreamInfoResponse {\n"); + sb.Append(" time: ").Append(Time).Append("\n"); + sb.Append(" dataList: ").Append(DataList).Append("\n"); + sb.Append(" xRequestId: ").Append(XRequestId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ListPlayDomainStreamInfoResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ListPlayDomainStreamInfoResponse input) + { + if (input == null) + return false; + + return + ( + this.Time == input.Time || + (this.Time != null && + this.Time.Equals(input.Time)) + ) && + ( + this.DataList == input.DataList || + this.DataList != null && + input.DataList != null && + this.DataList.SequenceEqual(input.DataList) + ) && + ( + this.XRequestId == input.XRequestId || + (this.XRequestId != null && + this.XRequestId.Equals(input.XRequestId)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Time != null) + hashCode = hashCode * 59 + this.Time.GetHashCode(); + if (this.DataList != null) + hashCode = hashCode * 59 + this.DataList.GetHashCode(); + if (this.XRequestId != null) + hashCode = hashCode * 59 + this.XRequestId.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Live/V2/Model/PlayDomainStreamInfo.cs b/Services/Live/V2/Model/PlayDomainStreamInfo.cs new file mode 100644 index 000000000..d4ccd0ad9 --- /dev/null +++ b/Services/Live/V2/Model/PlayDomainStreamInfo.cs @@ -0,0 +1,133 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Live.V2.Model +{ + /// + /// + /// + public class PlayDomainStreamInfo + { + + /// + /// 播放域名 + /// + [JsonProperty("play_domain", NullValueHandling = NullValueHandling.Ignore)] + public string PlayDomain { get; set; } + + /// + /// 播放流名 + /// + [JsonProperty("stream", NullValueHandling = NullValueHandling.Ignore)] + public string Stream { get; set; } + + /// + /// 播放的协议,支持flv,hls,rtmp。 + /// + [JsonProperty("protocol", NullValueHandling = NullValueHandling.Ignore)] + public string Protocol { get; set; } + + /// + /// 1分钟粒度的带宽值,单位为bps。 + /// + [JsonProperty("bandwidth", NullValueHandling = NullValueHandling.Ignore)] + public long? Bandwidth { get; set; } + + /// + /// 1分钟粒度的在线人数。 + /// + [JsonProperty("online", NullValueHandling = NullValueHandling.Ignore)] + public long? Online { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PlayDomainStreamInfo {\n"); + sb.Append(" playDomain: ").Append(PlayDomain).Append("\n"); + sb.Append(" stream: ").Append(Stream).Append("\n"); + sb.Append(" protocol: ").Append(Protocol).Append("\n"); + sb.Append(" bandwidth: ").Append(Bandwidth).Append("\n"); + sb.Append(" online: ").Append(Online).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as PlayDomainStreamInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(PlayDomainStreamInfo input) + { + if (input == null) + return false; + + return + ( + this.PlayDomain == input.PlayDomain || + (this.PlayDomain != null && + this.PlayDomain.Equals(input.PlayDomain)) + ) && + ( + this.Stream == input.Stream || + (this.Stream != null && + this.Stream.Equals(input.Stream)) + ) && + ( + this.Protocol == input.Protocol || + (this.Protocol != null && + this.Protocol.Equals(input.Protocol)) + ) && + ( + this.Bandwidth == input.Bandwidth || + (this.Bandwidth != null && + this.Bandwidth.Equals(input.Bandwidth)) + ) && + ( + this.Online == input.Online || + (this.Online != null && + this.Online.Equals(input.Online)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PlayDomain != null) + hashCode = hashCode * 59 + this.PlayDomain.GetHashCode(); + if (this.Stream != null) + hashCode = hashCode * 59 + this.Stream.GetHashCode(); + if (this.Protocol != null) + hashCode = hashCode * 59 + this.Protocol.GetHashCode(); + if (this.Bandwidth != null) + hashCode = hashCode * 59 + this.Bandwidth.GetHashCode(); + if (this.Online != null) + hashCode = hashCode * 59 + this.Online.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Lts/Lts.csproj b/Services/Lts/Lts.csproj index 8f4da0ab1..c24a9fdc1 100644 --- a/Services/Lts/Lts.csproj +++ b/Services/Lts/Lts.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Lts - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Moderation/Moderation.csproj b/Services/Moderation/Moderation.csproj index 0904818b6..6d91bc9a3 100644 --- a/Services/Moderation/Moderation.csproj +++ b/Services/Moderation/Moderation.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Moderation - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Mpc/Mpc.csproj b/Services/Mpc/Mpc.csproj index 9fd813187..03c1f5799 100644 --- a/Services/Mpc/Mpc.csproj +++ b/Services/Mpc/Mpc.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Mpc - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Msgsms/Msgsms.csproj b/Services/Msgsms/Msgsms.csproj index 270e221a1..b9c003a6c 100644 --- a/Services/Msgsms/Msgsms.csproj +++ b/Services/Msgsms/Msgsms.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Msgsms - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Nat/Nat.csproj b/Services/Nat/Nat.csproj index b3b0f9d56..3f28517d9 100644 --- a/Services/Nat/Nat.csproj +++ b/Services/Nat/Nat.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Nat - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ocr/Ocr.csproj b/Services/Ocr/Ocr.csproj index 76e9688c6..8e28f7a09 100644 --- a/Services/Ocr/Ocr.csproj +++ b/Services/Ocr/Ocr.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ocr - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Organizations/Organizations.csproj b/Services/Organizations/Organizations.csproj index 067c0bd17..983260aa8 100644 --- a/Services/Organizations/Organizations.csproj +++ b/Services/Organizations/Organizations.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Organizations - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/PanguLargeModels/PanguLargeModels.csproj b/Services/PanguLargeModels/PanguLargeModels.csproj index bff2bc180..9d32ea9cd 100644 --- a/Services/PanguLargeModels/PanguLargeModels.csproj +++ b/Services/PanguLargeModels/PanguLargeModels.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.PanguLargeModels - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/ProjectMan/ProjectMan.csproj b/Services/ProjectMan/ProjectMan.csproj index c82fff4db..973b109f8 100644 --- a/Services/ProjectMan/ProjectMan.csproj +++ b/Services/ProjectMan/ProjectMan.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.ProjectMan - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Rabbitmq/Rabbitmq.csproj b/Services/Rabbitmq/Rabbitmq.csproj index db6331892..1167fabd8 100644 --- a/Services/Rabbitmq/Rabbitmq.csproj +++ b/Services/Rabbitmq/Rabbitmq.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Rabbitmq - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Ram/Ram.csproj b/Services/Ram/Ram.csproj index 53c1263b8..3d1aefbfb 100644 --- a/Services/Ram/Ram.csproj +++ b/Services/Ram/Ram.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Ram - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Rds/Rds.csproj b/Services/Rds/Rds.csproj index 928e09842..c6ab0fb8e 100644 --- a/Services/Rds/Rds.csproj +++ b/Services/Rds/Rds.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Rds - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/RocketMQ/RocketMQ.csproj b/Services/RocketMQ/RocketMQ.csproj index 403ee1a9b..517d055a4 100644 --- a/Services/RocketMQ/RocketMQ.csproj +++ b/Services/RocketMQ/RocketMQ.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.RocketMQ - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Sis/Sis.csproj b/Services/Sis/Sis.csproj index 6dbaa2af9..5e5b38dc0 100644 --- a/Services/Sis/Sis.csproj +++ b/Services/Sis/Sis.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Sis - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Smn/Smn.csproj b/Services/Smn/Smn.csproj index 97c9c5501..468ff7f3a 100644 --- a/Services/Smn/Smn.csproj +++ b/Services/Smn/Smn.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Smn - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Swr/Swr.csproj b/Services/Swr/Swr.csproj index 2ba894b4e..bb6c5877f 100644 --- a/Services/Swr/Swr.csproj +++ b/Services/Swr/Swr.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Swr - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Tms/Tms.csproj b/Services/Tms/Tms.csproj index ea8a42222..c3b3ee655 100644 --- a/Services/Tms/Tms.csproj +++ b/Services/Tms/Tms.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Tms - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Vod/V1/Model/DeleteTranscodeProductReq.cs b/Services/Vod/V1/Model/DeleteTranscodeProductReq.cs new file mode 100644 index 000000000..1442a3fe4 --- /dev/null +++ b/Services/Vod/V1/Model/DeleteTranscodeProductReq.cs @@ -0,0 +1,220 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// + /// + public class DeleteTranscodeProductReq + { + /// + /// GROUP:模板组级删除。 PRODUCT:产物级删除 + /// + /// GROUP:模板组级删除。 PRODUCT:产物级删除 + [JsonConverter(typeof(EnumClassConverter))] + public class DeleteTypeEnum + { + /// + /// Enum GROUP for value: GROUP + /// + public static readonly DeleteTypeEnum GROUP = new DeleteTypeEnum("GROUP"); + + /// + /// Enum PRODUCT for value: PRODUCT + /// + public static readonly DeleteTypeEnum PRODUCT = new DeleteTypeEnum("PRODUCT"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "GROUP", GROUP }, + { "PRODUCT", PRODUCT }, + }; + + private string _value; + + public DeleteTypeEnum() + { + + } + + public DeleteTypeEnum(string value) + { + _value = value; + } + + public static DeleteTypeEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as DeleteTypeEnum)) + { + return true; + } + + return false; + } + + public bool Equals(DeleteTypeEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(DeleteTypeEnum a, DeleteTypeEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(DeleteTypeEnum a, DeleteTypeEnum b) + { + return !(a == b); + } + } + + + /// + /// 媒资Id + /// + [JsonProperty("asset_id", NullValueHandling = NullValueHandling.Ignore)] + public string AssetId { get; set; } + + /// + /// GROUP:模板组级删除。 PRODUCT:产物级删除 + /// + [JsonProperty("delete_type", NullValueHandling = NullValueHandling.Ignore)] + public DeleteTypeEnum DeleteType { get; set; } + /// + /// 删除的产物信息 + /// + [JsonProperty("delete_infos", NullValueHandling = NullValueHandling.Ignore)] + public List DeleteInfos { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteTranscodeProductReq {\n"); + sb.Append(" assetId: ").Append(AssetId).Append("\n"); + sb.Append(" deleteType: ").Append(DeleteType).Append("\n"); + sb.Append(" deleteInfos: ").Append(DeleteInfos).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteTranscodeProductReq); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteTranscodeProductReq input) + { + if (input == null) + return false; + + return + ( + this.AssetId == input.AssetId || + (this.AssetId != null && + this.AssetId.Equals(input.AssetId)) + ) && + ( + this.DeleteType == input.DeleteType || + (this.DeleteType != null && + this.DeleteType.Equals(input.DeleteType)) + ) && + ( + this.DeleteInfos == input.DeleteInfos || + this.DeleteInfos != null && + input.DeleteInfos != null && + this.DeleteInfos.SequenceEqual(input.DeleteInfos) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AssetId != null) + hashCode = hashCode * 59 + this.AssetId.GetHashCode(); + if (this.DeleteType != null) + hashCode = hashCode * 59 + this.DeleteType.GetHashCode(); + if (this.DeleteInfos != null) + hashCode = hashCode * 59 + this.DeleteInfos.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/DeleteTranscodeProductRequest.cs b/Services/Vod/V1/Model/DeleteTranscodeProductRequest.cs new file mode 100644 index 000000000..ea9f699b9 --- /dev/null +++ b/Services/Vod/V1/Model/DeleteTranscodeProductRequest.cs @@ -0,0 +1,78 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// Request Object + /// + public class DeleteTranscodeProductRequest + { + + /// + /// + /// + [SDKProperty("body", IsBody = true)] + [JsonProperty("body", NullValueHandling = NullValueHandling.Ignore)] + public DeleteTranscodeProductReq Body { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteTranscodeProductRequest {\n"); + sb.Append(" body: ").Append(Body).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteTranscodeProductRequest); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteTranscodeProductRequest input) + { + if (input == null) + return false; + + return + ( + this.Body == input.Body || + (this.Body != null && + this.Body.Equals(input.Body)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Body != null) + hashCode = hashCode * 59 + this.Body.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/DeleteTranscodeProductResponse.cs b/Services/Vod/V1/Model/DeleteTranscodeProductResponse.cs new file mode 100644 index 000000000..24cffafa5 --- /dev/null +++ b/Services/Vod/V1/Model/DeleteTranscodeProductResponse.cs @@ -0,0 +1,241 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// Response Object + /// + public class DeleteTranscodeProductResponse : SdkResponse + { + /// + /// SUCCESS:成功 FAIL:失败 PARTIAL_SUCCESS:部分成功 + /// + /// SUCCESS:成功 FAIL:失败 PARTIAL_SUCCESS:部分成功 + [JsonConverter(typeof(EnumClassConverter))] + public class StatusEnum + { + /// + /// Enum SUCCESS for value: SUCCESS + /// + public static readonly StatusEnum SUCCESS = new StatusEnum("SUCCESS"); + + /// + /// Enum FAIL for value: FAIL + /// + public static readonly StatusEnum FAIL = new StatusEnum("FAIL"); + + /// + /// Enum PARTIAL_SUCCESS for value: PARTIAL_SUCCESS + /// + public static readonly StatusEnum PARTIAL_SUCCESS = new StatusEnum("PARTIAL_SUCCESS"); + + private static readonly Dictionary StaticFields = + new Dictionary() + { + { "SUCCESS", SUCCESS }, + { "FAIL", FAIL }, + { "PARTIAL_SUCCESS", PARTIAL_SUCCESS }, + }; + + private string _value; + + public StatusEnum() + { + + } + + public StatusEnum(string value) + { + _value = value; + } + + public static StatusEnum FromValue(string value) + { + if(value == null){ + return null; + } + + if (StaticFields.ContainsKey(value)) + { + return StaticFields[value]; + } + + return null; + } + + public string GetValue() + { + return _value; + } + + public override string ToString() + { + return $"{_value}"; + } + + public override int GetHashCode() + { + return this._value.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) + { + return false; + } + + if (ReferenceEquals(this, obj)) + { + return true; + } + + if (this.Equals(obj as StatusEnum)) + { + return true; + } + + return false; + } + + public bool Equals(StatusEnum obj) + { + if ((object)obj == null) + { + return false; + } + return StringComparer.OrdinalIgnoreCase.Equals(this._value, obj.GetValue()); + } + + public static bool operator ==(StatusEnum a, StatusEnum b) + { + if (System.Object.ReferenceEquals(a, b)) + { + return true; + } + + if ((object)a == null) + { + return false; + } + + return a.Equals(b); + } + + public static bool operator !=(StatusEnum a, StatusEnum b) + { + return !(a == b); + } + } + + + /// + /// 媒资ID + /// + [JsonProperty("asset_id", NullValueHandling = NullValueHandling.Ignore)] + public string AssetId { get; set; } + + /// + /// SUCCESS:成功 FAIL:失败 PARTIAL_SUCCESS:部分成功 + /// + [JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)] + public StatusEnum Status { get; set; } + /// + /// 删除成功的产物 + /// + [JsonProperty("deleted_products", NullValueHandling = NullValueHandling.Ignore)] + public List DeletedProducts { get; set; } + + /// + /// 删除失败的产物 + /// + [JsonProperty("failed_products", NullValueHandling = NullValueHandling.Ignore)] + public List FailedProducts { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeleteTranscodeProductResponse {\n"); + sb.Append(" assetId: ").Append(AssetId).Append("\n"); + sb.Append(" status: ").Append(Status).Append("\n"); + sb.Append(" deletedProducts: ").Append(DeletedProducts).Append("\n"); + sb.Append(" failedProducts: ").Append(FailedProducts).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as DeleteTranscodeProductResponse); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(DeleteTranscodeProductResponse input) + { + if (input == null) + return false; + + return + ( + this.AssetId == input.AssetId || + (this.AssetId != null && + this.AssetId.Equals(input.AssetId)) + ) && + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.DeletedProducts == input.DeletedProducts || + this.DeletedProducts != null && + input.DeletedProducts != null && + this.DeletedProducts.SequenceEqual(input.DeletedProducts) + ) && + ( + this.FailedProducts == input.FailedProducts || + this.FailedProducts != null && + input.FailedProducts != null && + this.FailedProducts.SequenceEqual(input.FailedProducts) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AssetId != null) + hashCode = hashCode * 59 + this.AssetId.GetHashCode(); + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.DeletedProducts != null) + hashCode = hashCode * 59 + this.DeletedProducts.GetHashCode(); + if (this.FailedProducts != null) + hashCode = hashCode * 59 + this.FailedProducts.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/ProductDelFailInfo.cs b/Services/Vod/V1/Model/ProductDelFailInfo.cs new file mode 100644 index 000000000..8ac533172 --- /dev/null +++ b/Services/Vod/V1/Model/ProductDelFailInfo.cs @@ -0,0 +1,91 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// + /// + public class ProductDelFailInfo + { + + /// + /// 删除产物的URL + /// + [JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)] + public string Url { get; set; } + + /// + /// 删除产物失败的原因 + /// + [JsonProperty("fail_reason", NullValueHandling = NullValueHandling.Ignore)] + public string FailReason { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ProductDelFailInfo {\n"); + sb.Append(" url: ").Append(Url).Append("\n"); + sb.Append(" failReason: ").Append(FailReason).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ProductDelFailInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ProductDelFailInfo input) + { + if (input == null) + return false; + + return + ( + this.Url == input.Url || + (this.Url != null && + this.Url.Equals(input.Url)) + ) && + ( + this.FailReason == input.FailReason || + (this.FailReason != null && + this.FailReason.Equals(input.FailReason)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Url != null) + hashCode = hashCode * 59 + this.Url.GetHashCode(); + if (this.FailReason != null) + hashCode = hashCode * 59 + this.FailReason.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/ProductGroupDelFailInfo.cs b/Services/Vod/V1/Model/ProductGroupDelFailInfo.cs new file mode 100644 index 000000000..b2c14b86c --- /dev/null +++ b/Services/Vod/V1/Model/ProductGroupDelFailInfo.cs @@ -0,0 +1,106 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// + /// + public class ProductGroupDelFailInfo + { + + /// + /// 模板组ID + /// + [JsonProperty("group_id", NullValueHandling = NullValueHandling.Ignore)] + public string GroupId { get; set; } + + /// + /// 模板组删除失败的原因 + /// + [JsonProperty("fail_reason", NullValueHandling = NullValueHandling.Ignore)] + public string FailReason { get; set; } + + /// + /// 删除失败的产物的信息 + /// + [JsonProperty("products", NullValueHandling = NullValueHandling.Ignore)] + public List Products { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ProductGroupDelFailInfo {\n"); + sb.Append(" groupId: ").Append(GroupId).Append("\n"); + sb.Append(" failReason: ").Append(FailReason).Append("\n"); + sb.Append(" products: ").Append(Products).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ProductGroupDelFailInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ProductGroupDelFailInfo input) + { + if (input == null) + return false; + + return + ( + this.GroupId == input.GroupId || + (this.GroupId != null && + this.GroupId.Equals(input.GroupId)) + ) && + ( + this.FailReason == input.FailReason || + (this.FailReason != null && + this.FailReason.Equals(input.FailReason)) + ) && + ( + this.Products == input.Products || + this.Products != null && + input.Products != null && + this.Products.SequenceEqual(input.Products) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.GroupId != null) + hashCode = hashCode * 59 + this.GroupId.GetHashCode(); + if (this.FailReason != null) + hashCode = hashCode * 59 + this.FailReason.GetHashCode(); + if (this.Products != null) + hashCode = hashCode * 59 + this.Products.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/ProductGroupInfo.cs b/Services/Vod/V1/Model/ProductGroupInfo.cs new file mode 100644 index 000000000..01c661a02 --- /dev/null +++ b/Services/Vod/V1/Model/ProductGroupInfo.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// + /// + public class ProductGroupInfo + { + + /// + /// 模板组ID + /// + [JsonProperty("group_id", NullValueHandling = NullValueHandling.Ignore)] + public string GroupId { get; set; } + + /// + /// 产物信息 + /// + [JsonProperty("products", NullValueHandling = NullValueHandling.Ignore)] + public List Products { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ProductGroupInfo {\n"); + sb.Append(" groupId: ").Append(GroupId).Append("\n"); + sb.Append(" products: ").Append(Products).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ProductGroupInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ProductGroupInfo input) + { + if (input == null) + return false; + + return + ( + this.GroupId == input.GroupId || + (this.GroupId != null && + this.GroupId.Equals(input.GroupId)) + ) && + ( + this.Products == input.Products || + this.Products != null && + input.Products != null && + this.Products.SequenceEqual(input.Products) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.GroupId != null) + hashCode = hashCode * 59 + this.GroupId.GetHashCode(); + if (this.Products != null) + hashCode = hashCode * 59 + this.Products.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/ProductUrlInfo.cs b/Services/Vod/V1/Model/ProductUrlInfo.cs new file mode 100644 index 000000000..385ad0596 --- /dev/null +++ b/Services/Vod/V1/Model/ProductUrlInfo.cs @@ -0,0 +1,77 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Linq; +using System.Runtime.Serialization; + +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using HuaweiCloud.SDK.Core; + +namespace HuaweiCloud.SDK.Vod.V1.Model +{ + /// + /// + /// + public class ProductUrlInfo + { + + /// + /// 删除的产物URL + /// + [JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)] + public string Url { get; set; } + + + + /// + /// Get the string + /// + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ProductUrlInfo {\n"); + sb.Append(" url: ").Append(Url).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + public override bool Equals(object input) + { + return this.Equals(input as ProductUrlInfo); + } + + /// + /// Returns true if objects are equal + /// + public bool Equals(ProductUrlInfo input) + { + if (input == null) + return false; + + return + ( + this.Url == input.Url || + (this.Url != null && + this.Url.Equals(input.Url)) + ); + } + + /// + /// Get hash code + /// + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Url != null) + hashCode = hashCode * 59 + this.Url.GetHashCode(); + return hashCode; + } + } + } +} diff --git a/Services/Vod/V1/Model/VodSampleData.cs b/Services/Vod/V1/Model/VodSampleData.cs index e70cd3517..52b9f1a68 100644 --- a/Services/Vod/V1/Model/VodSampleData.cs +++ b/Services/Vod/V1/Model/VodSampleData.cs @@ -23,7 +23,19 @@ public class VodSampleData public float? Storage { get; set; } /// - /// 转码时长。 单位:秒。 + /// 低频存储空间。 单位:GB。 + /// + [JsonProperty("storage_warm", NullValueHandling = NullValueHandling.Ignore)] + public float? StorageWarm { get; set; } + + /// + /// 归档存储空间。 单位:GB。 + /// + [JsonProperty("storage_cold", NullValueHandling = NullValueHandling.Ignore)] + public float? StorageCold { get; set; } + + /// + /// 转码时长。 单位:分钟。 /// [JsonProperty("transcode", NullValueHandling = NullValueHandling.Ignore)] public long? Transcode { get; set; } @@ -38,6 +50,8 @@ public override string ToString() var sb = new StringBuilder(); sb.Append("class VodSampleData {\n"); sb.Append(" storage: ").Append(Storage).Append("\n"); + sb.Append(" storageWarm: ").Append(StorageWarm).Append("\n"); + sb.Append(" storageCold: ").Append(StorageCold).Append("\n"); sb.Append(" transcode: ").Append(Transcode).Append("\n"); sb.Append("}\n"); return sb.ToString(); @@ -65,6 +79,16 @@ public bool Equals(VodSampleData input) (this.Storage != null && this.Storage.Equals(input.Storage)) ) && + ( + this.StorageWarm == input.StorageWarm || + (this.StorageWarm != null && + this.StorageWarm.Equals(input.StorageWarm)) + ) && + ( + this.StorageCold == input.StorageCold || + (this.StorageCold != null && + this.StorageCold.Equals(input.StorageCold)) + ) && ( this.Transcode == input.Transcode || (this.Transcode != null && @@ -82,6 +106,10 @@ public override int GetHashCode() int hashCode = 41; if (this.Storage != null) hashCode = hashCode * 59 + this.Storage.GetHashCode(); + if (this.StorageWarm != null) + hashCode = hashCode * 59 + this.StorageWarm.GetHashCode(); + if (this.StorageCold != null) + hashCode = hashCode * 59 + this.StorageCold.GetHashCode(); if (this.Transcode != null) hashCode = hashCode * 59 + this.Transcode.GetHashCode(); return hashCode; diff --git a/Services/Vod/V1/VodAsyncClient.cs b/Services/Vod/V1/VodAsyncClient.cs index f78823479..73564da77 100644 --- a/Services/Vod/V1/VodAsyncClient.cs +++ b/Services/Vod/V1/VodAsyncClient.cs @@ -501,6 +501,30 @@ public AsyncInvoker DeleteTemplateGroupCo return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); } + /// + /// 删除转码产物 + /// + /// 删除转码产物。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task DeleteTranscodeProductAsync(DeleteTranscodeProductRequest deleteTranscodeProductRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/transcode-product", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteTranscodeProductRequest); + var response = await DoHttpRequestAsync("DELETE", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker DeleteTranscodeProductAsyncInvoker(DeleteTranscodeProductRequest deleteTranscodeProductRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/transcode-product", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteTranscodeProductRequest); + return new AsyncInvoker(this, "DELETE", request, JsonUtils.DeSerialize); + } + /// /// 删除自定义模板 /// @@ -776,6 +800,30 @@ public AsyncInvoker ListWatermarkTemplateAsyncInv return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 多字幕封装 + /// + /// 多字幕封装,仅支持 HLS VTT格式 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ModifySubtitleAsync(ModifySubtitleRequest modifySubtitleRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ModifySubtitleAsyncInvoker(ModifySubtitleRequest modifySubtitleRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + /// /// 创建媒资:OBS转存方式 /// @@ -974,6 +1022,34 @@ public AsyncInvoker ShowPreheatingAssetAsyncInvoker return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询取回数据信息 + /// + /// ## 典型场景 ## + /// 用于查询点播低频和归档取回量统计数据。<br/> + /// + /// ## 接口功能 ## + /// 用于查询点播低频和归档取回量统计数据。<br/> + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task ShowVodRetrievalAsync(ShowVodRetrievalRequest showVodRetrievalRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); + var response = await DoHttpRequestAsync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker ShowVodRetrievalAsyncInvoker(ShowVodRetrievalRequest showVodRetrievalRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); + return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询源站统计信息 /// @@ -1148,6 +1224,31 @@ public AsyncInvoker UpdateCoverByThumbnailAsyncI return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerializeNull); } + /// + /// 修改媒资文件在obs的存储模式 + /// + /// ## 接口功能 ## + /// 修改媒资文件在obs的存储模式<br/> + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public async Task UpdateStorageModeAsync(UpdateStorageModeRequest updateStorageModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); + var response = await DoHttpRequestAsync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public AsyncInvoker UpdateStorageModeAsyncInvoker(UpdateStorageModeRequest updateStorageModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); + return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + /// /// 修改自定义转码模板组 /// @@ -1340,82 +1441,5 @@ public AsyncInvoker ShowTakeOverTaskDetailsAsyn return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } - /// - /// 查询取回数据信息 - /// - /// ## 典型场景 ## - /// 用于查询点播低频和归档取回量统计数据。<br/> - /// - /// ## 接口功能 ## - /// 用于查询点播低频和归档取回量统计数据。<br/> - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public async Task ShowVodRetrievalAsync(ShowVodRetrievalRequest showVodRetrievalRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); - var response = await DoHttpRequestAsync("GET", request); - return JsonUtils.DeSerialize(response); - } - - public AsyncInvoker ShowVodRetrievalAsyncInvoker(ShowVodRetrievalRequest showVodRetrievalRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); - return new AsyncInvoker(this, "GET", request, JsonUtils.DeSerialize); - } - - /// - /// 多字幕封装 - /// - /// 多字幕封装,仅支持 HLS VTT格式 - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public async Task ModifySubtitleAsync(ModifySubtitleRequest modifySubtitleRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); - var response = await DoHttpRequestAsync("PUT", request); - return JsonUtils.DeSerialize(response); - } - - public AsyncInvoker ModifySubtitleAsyncInvoker(ModifySubtitleRequest modifySubtitleRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); - return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); - } - - /// - /// 修改媒资文件在obs的存储模式 - /// - /// ## 接口功能 ## - /// 修改媒资文件在obs的存储模式<br/> - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public async Task UpdateStorageModeAsync(UpdateStorageModeRequest updateStorageModeRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); - var response = await DoHttpRequestAsync("PUT", request); - return JsonUtils.DeSerialize(response); - } - - public AsyncInvoker UpdateStorageModeAsyncInvoker(UpdateStorageModeRequest updateStorageModeRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); - return new AsyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); - } - } } \ No newline at end of file diff --git a/Services/Vod/V1/VodClient.cs b/Services/Vod/V1/VodClient.cs index 54edeb5fd..284ae3dc2 100644 --- a/Services/Vod/V1/VodClient.cs +++ b/Services/Vod/V1/VodClient.cs @@ -500,6 +500,30 @@ public SyncInvoker DeleteTemplateGroupCol return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerializeNull); } + /// + /// 删除转码产物 + /// + /// 删除转码产物。 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public DeleteTranscodeProductResponse DeleteTranscodeProduct(DeleteTranscodeProductRequest deleteTranscodeProductRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/transcode-product", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteTranscodeProductRequest); + var response = DoHttpRequestSync("DELETE", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker DeleteTranscodeProductInvoker(DeleteTranscodeProductRequest deleteTranscodeProductRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/transcode-product", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", deleteTranscodeProductRequest); + return new SyncInvoker(this, "DELETE", request, JsonUtils.DeSerialize); + } + /// /// 删除自定义模板 /// @@ -775,6 +799,30 @@ public SyncInvoker ListWatermarkTemplateInvoker(L return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 多字幕封装 + /// + /// 多字幕封装,仅支持 HLS VTT格式 + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ModifySubtitleResponse ModifySubtitle(ModifySubtitleRequest modifySubtitleRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ModifySubtitleInvoker(ModifySubtitleRequest modifySubtitleRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + /// /// 创建媒资:OBS转存方式 /// @@ -973,6 +1021,34 @@ public SyncInvoker ShowPreheatingAssetInvoker(ShowP return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } + /// + /// 查询取回数据信息 + /// + /// ## 典型场景 ## + /// 用于查询点播低频和归档取回量统计数据。<br/> + /// + /// ## 接口功能 ## + /// 用于查询点播低频和归档取回量统计数据。<br/> + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public ShowVodRetrievalResponse ShowVodRetrieval(ShowVodRetrievalRequest showVodRetrievalRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); + var response = DoHttpRequestSync("GET", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker ShowVodRetrievalInvoker(ShowVodRetrievalRequest showVodRetrievalRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); + return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); + } + /// /// 查询源站统计信息 /// @@ -1147,6 +1223,31 @@ public SyncInvoker UpdateCoverByThumbnailInvoker return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerializeNull); } + /// + /// 修改媒资文件在obs的存储模式 + /// + /// ## 接口功能 ## + /// 修改媒资文件在obs的存储模式<br/> + /// + /// Please refer to HUAWEI cloud API Explorer for details. + /// + public UpdateStorageModeResponse UpdateStorageMode(UpdateStorageModeRequest updateStorageModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); + var response = DoHttpRequestSync("PUT", request); + return JsonUtils.DeSerialize(response); + } + + public SyncInvoker UpdateStorageModeInvoker(UpdateStorageModeRequest updateStorageModeRequest) + { + var urlParam = new Dictionary(); + var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); + var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); + return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); + } + /// /// 修改自定义转码模板组 /// @@ -1339,82 +1440,5 @@ public SyncInvoker ShowTakeOverTaskDetailsInvok return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); } - /// - /// 查询取回数据信息 - /// - /// ## 典型场景 ## - /// 用于查询点播低频和归档取回量统计数据。<br/> - /// - /// ## 接口功能 ## - /// 用于查询点播低频和归档取回量统计数据。<br/> - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public ShowVodRetrievalResponse ShowVodRetrieval(ShowVodRetrievalRequest showVodRetrievalRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); - var response = DoHttpRequestSync("GET", request); - return JsonUtils.DeSerialize(response); - } - - public SyncInvoker ShowVodRetrievalInvoker(ShowVodRetrievalRequest showVodRetrievalRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/vod-retrieval", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", showVodRetrievalRequest); - return new SyncInvoker(this, "GET", request, JsonUtils.DeSerialize); - } - - /// - /// 多字幕封装 - /// - /// 多字幕封装,仅支持 HLS VTT格式 - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public ModifySubtitleResponse ModifySubtitle(ModifySubtitleRequest modifySubtitleRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); - var response = DoHttpRequestSync("PUT", request); - return JsonUtils.DeSerialize(response); - } - - public SyncInvoker ModifySubtitleInvoker(ModifySubtitleRequest modifySubtitleRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/subtitles", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", modifySubtitleRequest); - return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); - } - - /// - /// 修改媒资文件在obs的存储模式 - /// - /// ## 接口功能 ## - /// 修改媒资文件在obs的存储模式<br/> - /// - /// Please refer to HUAWEI cloud API Explorer for details. - /// - public UpdateStorageModeResponse UpdateStorageMode(UpdateStorageModeRequest updateStorageModeRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); - var response = DoHttpRequestSync("PUT", request); - return JsonUtils.DeSerialize(response); - } - - public SyncInvoker UpdateStorageModeInvoker(UpdateStorageModeRequest updateStorageModeRequest) - { - var urlParam = new Dictionary(); - var urlPath = HttpUtils.AddUrlPath("/v1/{project_id}/asset/storage-mode", urlParam); - var request = HttpUtils.InitSdkRequest(urlPath, "application/json", updateStorageModeRequest); - return new SyncInvoker(this, "PUT", request, JsonUtils.DeSerialize); - } - } } \ No newline at end of file diff --git a/Services/Vod/Vod.csproj b/Services/Vod/Vod.csproj index b7558aa20..bb6834bdd 100644 --- a/Services/Vod/Vod.csproj +++ b/Services/Vod/Vod.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Vod - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Vpc/V3/VpcAsyncClient.cs b/Services/Vpc/V3/VpcAsyncClient.cs index 57a1efeda..444f5ee1f 100644 --- a/Services/Vpc/V3/VpcAsyncClient.cs +++ b/Services/Vpc/V3/VpcAsyncClient.cs @@ -72,6 +72,7 @@ public AsyncInvoker AddSourcesToTraffi /// /// 为指定的端口批量添加标签。 /// 此接口为幂等接口:创建时如果请求体中存在重复key则报错。创建时,不允许设置重复key数据,如果数据库已存在该key,就覆盖value的值。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -175,6 +176,7 @@ public AsyncInvoker BatchDeletePortTagsAsyncInvoker /// 查询端口资源实例数量 /// /// 使用标签过滤查询端口实例数量。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -200,6 +202,7 @@ public AsyncInvoker CountPortsByTagsAsyncInvoker(Count /// /// 给指定端口资源实例增加标签信息 /// 此接口为幂等接口:创建时,如果创建的标签已经存在(key相同),则覆盖。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -370,7 +373,8 @@ public AsyncInvoker CreateTrafficMirrorSessi /// 删除端口资源标签 /// /// 删除指定端口的标签信息 - /// 该接口为幂等接口:删除的key不存在报404,key不能为空或者空字符串 + /// 该接口为幂等接口:删除的key不存在报404,key不能为空或者空字符串。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -554,7 +558,8 @@ public AsyncInvoker DeleteTrafficMirrorSessi /// /// 查询端口项目标签 /// - /// 查询租户在指定Project中实例类型的所有资源标签集合 + /// 查询租户在指定Project中实例类型的所有资源标签集合。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -579,6 +584,7 @@ public AsyncInvoker ListPortTagsAsyncInvoker(ListPortTagsR /// 查询端口资源实例列表 /// /// 使用标签过滤查询端口。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -822,7 +828,8 @@ public AsyncInvoker RemoveSources /// /// 查询端口资源标签 /// - /// 查询指定端口的标签信息 + /// 查询指定端口的标签信息。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// diff --git a/Services/Vpc/V3/VpcClient.cs b/Services/Vpc/V3/VpcClient.cs index f4544e8b7..df6f0bcd3 100644 --- a/Services/Vpc/V3/VpcClient.cs +++ b/Services/Vpc/V3/VpcClient.cs @@ -71,6 +71,7 @@ public SyncInvoker AddSourcesToTraffic /// /// 为指定的端口批量添加标签。 /// 此接口为幂等接口:创建时如果请求体中存在重复key则报错。创建时,不允许设置重复key数据,如果数据库已存在该key,就覆盖value的值。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -174,6 +175,7 @@ public SyncInvoker BatchDeletePortTagsInvoker(Batch /// 查询端口资源实例数量 /// /// 使用标签过滤查询端口实例数量。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -199,6 +201,7 @@ public SyncInvoker CountPortsByTagsInvoker(CountPortsB /// /// 给指定端口资源实例增加标签信息 /// 此接口为幂等接口:创建时,如果创建的标签已经存在(key相同),则覆盖。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -369,7 +372,8 @@ public SyncInvoker CreateTrafficMirrorSessio /// 删除端口资源标签 /// /// 删除指定端口的标签信息 - /// 该接口为幂等接口:删除的key不存在报404,key不能为空或者空字符串 + /// 该接口为幂等接口:删除的key不存在报404,key不能为空或者空字符串。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -553,7 +557,8 @@ public SyncInvoker DeleteTrafficMirrorSessio /// /// 查询端口项目标签 /// - /// 查询租户在指定Project中实例类型的所有资源标签集合 + /// 查询租户在指定Project中实例类型的所有资源标签集合。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -578,6 +583,7 @@ public SyncInvoker ListPortTagsInvoker(ListPortTagsRequest /// 查询端口资源实例列表 /// /// 使用标签过滤查询端口。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// @@ -821,7 +827,8 @@ public SyncInvoker RemoveSourcesF /// /// 查询端口资源标签 /// - /// 查询指定端口的标签信息 + /// 查询指定端口的标签信息。 + /// 该接口在华南-深圳上线。 /// /// Please refer to HUAWEI cloud API Explorer for details. /// diff --git a/Services/Vpc/Vpc.csproj b/Services/Vpc/Vpc.csproj index 6d87e43de..6e6a7afae 100644 --- a/Services/Vpc/Vpc.csproj +++ b/Services/Vpc/Vpc.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Vpc - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/Services/Vpcep/V1/Region/VpcepRegion.cs b/Services/Vpcep/V1/Region/VpcepRegion.cs index 5701f1f55..679de3a5a 100644 --- a/Services/Vpcep/V1/Region/VpcepRegion.cs +++ b/Services/Vpcep/V1/Region/VpcepRegion.cs @@ -51,6 +51,20 @@ public class VpcepRegion "https://vpcep.eu-west-0.myhuaweicloud.com"); public static readonly Region MY_KUALALUMPUR_1 = new Region("my-kualalumpur-1", "https://vpcep.my-kualalumpur-1.myhuaweicloud.com"); + public static readonly Region AE_AD_1 = new Region("ae-ad-1", + "https://vpcep.ae-ad-1.myhuaweicloud.com"); + public static readonly Region RU_MOSCOW_1 = new Region("ru-moscow-1", + "https://vpcep.ru-moscow-1.myhuaweicloud.com"); + public static readonly Region CN_EAST_5 = new Region("cn-east-5", + "https://vpcep.cn-east-5.myhuaweicloud.com"); + public static readonly Region CN_SOUTH_4 = new Region("cn-south-4", + "https://vpcep.cn-south-4.myhuaweicloud.com"); + public static readonly Region ME_EAST_1 = new Region("me-east-1", + "https://vpcep.me-east-1.myhuaweicloud.com"); + public static readonly Region RU_NORTHWEST_2 = new Region("ru-northwest-2", + "https://vpcep.ru-northwest-2.myhuaweicloud.com"); + public static readonly Region CN_NORTH_11 = new Region("cn-north-11", + "https://vpcep.cn-north-11.myhuaweicloud.com"); private static readonly IRegionProvider Provider = RegionProviderChain.GetDefault("VPCEP"); @@ -78,6 +92,13 @@ public class VpcepRegion { "ap-southeast-4", AP_SOUTHEAST_4 }, { "eu-west-0", EU_WEST_0 }, { "my-kualalumpur-1", MY_KUALALUMPUR_1 }, + { "ae-ad-1", AE_AD_1 }, + { "ru-moscow-1", RU_MOSCOW_1 }, + { "cn-east-5", CN_EAST_5 }, + { "cn-south-4", CN_SOUTH_4 }, + { "me-east-1", ME_EAST_1 }, + { "ru-northwest-2", RU_NORTHWEST_2 }, + { "cn-north-11", CN_NORTH_11 }, }; public static Region ValueOf(string regionId) diff --git a/Services/Vpcep/Vpcep.csproj b/Services/Vpcep/Vpcep.csproj index 06a623b59..521162e55 100644 --- a/Services/Vpcep/Vpcep.csproj +++ b/Services/Vpcep/Vpcep.csproj @@ -15,7 +15,7 @@ false false HuaweiCloud.SDK.Vpcep - 3.1.103 + 3.1.104 HuaweiCloud Copyright 2023 Huawei Technologies Co., Ltd. Huawei Technologies Co., Ltd. diff --git a/VERSION b/VERSION index 54ecca43b..8a79e85c0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.1.103 +3.1.104