diff --git a/ChangeLog.txt b/ChangeLog.txt index 8eac797770..46f5b2f646 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -1,3 +1,7 @@ +2025-01-14 Version: v1.63.82 +- Generated 2014-05-26 for `Ecs`. +- Add EndTerminalSession. + 2025-01-14 Version: v1.63.81 - Generated 2023-01-20 for `csas`. undefined diff --git a/services/ecs/create_image_pipeline.go b/services/ecs/create_image_pipeline.go index bc3b33174f..166ba5e740 100644 --- a/services/ecs/create_image_pipeline.go +++ b/services/ecs/create_image_pipeline.go @@ -71,29 +71,32 @@ func (client *Client) CreateImagePipelineWithCallback(request *CreateImagePipeli // CreateImagePipelineRequest is the request struct for api CreateImagePipeline type CreateImagePipelineRequest struct { *requests.RpcRequest - BaseImageType string `position:"Query" name:"BaseImageType"` - ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` - ClientToken string `position:"Query" name:"ClientToken"` - ToRegionId *[]string `position:"Query" name:"ToRegionId" type:"Repeated"` - InternetMaxBandwidthOut requests.Integer `position:"Query" name:"InternetMaxBandwidthOut"` - Description string `position:"Query" name:"Description"` - ResourceGroupId string `position:"Query" name:"ResourceGroupId"` - ImageName string `position:"Query" name:"ImageName"` - SystemDiskSize requests.Integer `position:"Query" name:"SystemDiskSize"` - InstanceType string `position:"Query" name:"InstanceType"` - Tag *[]CreateImagePipelineTag `position:"Query" name:"Tag" type:"Repeated"` - ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` - OwnerAccount string `position:"Query" name:"OwnerAccount"` - RepairMode string `position:"Query" name:"RepairMode"` - OwnerId requests.Integer `position:"Query" name:"OwnerId"` - BaseImage string `position:"Query" name:"BaseImage"` - VSwitchId string `position:"Query" name:"VSwitchId"` - AddAccount *[]string `position:"Query" name:"AddAccount" type:"Repeated"` - DeleteInstanceOnFailure requests.Boolean `position:"Query" name:"DeleteInstanceOnFailure"` - Name string `position:"Query" name:"Name"` - ImageFamily string `position:"Query" name:"ImageFamily"` - BuildContent string `position:"Query" name:"BuildContent"` - TestContent string `position:"Query" name:"TestContent"` + BaseImageType string `position:"Query" name:"BaseImageType"` + ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` + ClientToken string `position:"Query" name:"ClientToken"` + ToRegionId *[]string `position:"Query" name:"ToRegionId" type:"Repeated"` + InternetMaxBandwidthOut requests.Integer `position:"Query" name:"InternetMaxBandwidthOut"` + Description string `position:"Query" name:"Description"` + ResourceGroupId string `position:"Query" name:"ResourceGroupId"` + ImageName string `position:"Query" name:"ImageName"` + SystemDiskSize requests.Integer `position:"Query" name:"SystemDiskSize"` + InstanceType string `position:"Query" name:"InstanceType"` + Tag *[]CreateImagePipelineTag `position:"Query" name:"Tag" type:"Repeated"` + AdvancedOptions CreateImagePipelineAdvancedOptions `position:"Query" name:"AdvancedOptions" type:"Struct"` + NvmeSupport string `position:"Query" name:"NvmeSupport"` + ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` + OwnerAccount string `position:"Query" name:"OwnerAccount"` + RepairMode string `position:"Query" name:"RepairMode"` + OwnerId requests.Integer `position:"Query" name:"OwnerId"` + BaseImage string `position:"Query" name:"BaseImage"` + VSwitchId string `position:"Query" name:"VSwitchId"` + AddAccount *[]string `position:"Query" name:"AddAccount" type:"Repeated"` + DeleteInstanceOnFailure requests.Boolean `position:"Query" name:"DeleteInstanceOnFailure"` + Name string `position:"Query" name:"Name"` + ImageFamily string `position:"Query" name:"ImageFamily"` + BuildContent string `position:"Query" name:"BuildContent"` + ImportImageOptions CreateImagePipelineImportImageOptions `position:"Query" name:"ImportImageOptions" type:"Struct"` + TestContent string `position:"Query" name:"TestContent"` } // CreateImagePipelineTag is a repeated param struct in CreateImagePipelineRequest @@ -102,6 +105,38 @@ type CreateImagePipelineTag struct { Value string `name:"Value"` } +// CreateImagePipelineAdvancedOptions is a repeated param struct in CreateImagePipelineRequest +type CreateImagePipelineAdvancedOptions struct { + RetainCloudAssistant string `name:"RetainCloudAssistant"` + SkipBuildImage string `name:"SkipBuildImage"` + SkipCheckImage string `name:"SkipCheckImage"` +} + +// CreateImagePipelineImportImageOptions is a repeated param struct in CreateImagePipelineRequest +type CreateImagePipelineImportImageOptions struct { + Architecture string `name:"Architecture"` + OSType string `name:"OSType"` + Platform string `name:"Platform"` + BootMode string `name:"BootMode"` + LicenseType string `name:"LicenseType"` + DiskDeviceMappings *[]CreateImagePipelineImportImageOptionsDiskDeviceMappingsItem `name:"DiskDeviceMappings" type:"Repeated"` + Features CreateImagePipelineImportImageOptionsFeatures `name:"Features" type:"Struct"` + RetainImportedImage string `name:"RetainImportedImage"` +} + +// CreateImagePipelineImportImageOptionsDiskDeviceMappingsItem is a repeated param struct in CreateImagePipelineRequest +type CreateImagePipelineImportImageOptionsDiskDeviceMappingsItem struct { + OSSBucket string `name:"OSSBucket"` + OSSObject string `name:"OSSObject"` + Format string `name:"Format"` + DiskImageSize string `name:"DiskImageSize"` +} + +// CreateImagePipelineImportImageOptionsFeatures is a repeated param struct in CreateImagePipelineRequest +type CreateImagePipelineImportImageOptionsFeatures struct { + NvmeSupport string `name:"NvmeSupport"` +} + // CreateImagePipelineResponse is the response struct for api CreateImagePipeline type CreateImagePipelineResponse struct { *responses.BaseResponse diff --git a/services/ecs/create_network_interface.go b/services/ecs/create_network_interface.go index 3c8bc93525..984e9ed5fc 100644 --- a/services/ecs/create_network_interface.go +++ b/services/ecs/create_network_interface.go @@ -119,6 +119,7 @@ type CreateNetworkInterfaceNetworkInterfaceTrafficConfig struct { // CreateNetworkInterfaceEnhancedNetwork is a repeated param struct in CreateNetworkInterfaceRequest type CreateNetworkInterfaceEnhancedNetwork struct { EnableSriov string `name:"EnableSriov"` + EnableRss string `name:"EnableRss"` } // CreateNetworkInterfaceTag is a repeated param struct in CreateNetworkInterfaceRequest diff --git a/services/ecs/describe_instance_modification_price.go b/services/ecs/describe_instance_modification_price.go index 60dd8b78e0..8c0702508e 100644 --- a/services/ecs/describe_instance_modification_price.go +++ b/services/ecs/describe_instance_modification_price.go @@ -71,14 +71,15 @@ func (client *Client) DescribeInstanceModificationPriceWithCallback(request *Des // DescribeInstanceModificationPriceRequest is the request struct for api DescribeInstanceModificationPrice type DescribeInstanceModificationPriceRequest struct { *requests.RpcRequest - ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` - SystemDiskCategory string `position:"Query" name:"SystemDisk.Category"` - InstanceType string `position:"Query" name:"InstanceType"` - ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` - OwnerAccount string `position:"Query" name:"OwnerAccount"` - OwnerId requests.Integer `position:"Query" name:"OwnerId"` - DataDisk *[]DescribeInstanceModificationPriceDataDisk `position:"Query" name:"DataDisk" type:"Repeated"` - InstanceId string `position:"Query" name:"InstanceId"` + ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` + SystemDiskCategory string `position:"Query" name:"SystemDisk.Category"` + InstanceType string `position:"Query" name:"InstanceType"` + ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` + OwnerAccount string `position:"Query" name:"OwnerAccount"` + OwnerId requests.Integer `position:"Query" name:"OwnerId"` + DataDisk *[]DescribeInstanceModificationPriceDataDisk `position:"Query" name:"DataDisk" type:"Repeated"` + PromotionOptions DescribeInstanceModificationPricePromotionOptions `position:"Query" name:"PromotionOptions" type:"Struct"` + InstanceId string `position:"Query" name:"InstanceId"` } // DescribeInstanceModificationPriceDataDisk is a repeated param struct in DescribeInstanceModificationPriceRequest @@ -88,6 +89,11 @@ type DescribeInstanceModificationPriceDataDisk struct { Category string `name:"Category"` } +// DescribeInstanceModificationPricePromotionOptions is a repeated param struct in DescribeInstanceModificationPriceRequest +type DescribeInstanceModificationPricePromotionOptions struct { + CouponNo string `name:"CouponNo"` +} + // DescribeInstanceModificationPriceResponse is the response struct for api DescribeInstanceModificationPrice type DescribeInstanceModificationPriceResponse struct { *responses.BaseResponse diff --git a/services/ecs/describe_instance_types.go b/services/ecs/describe_instance_types.go index d3591c8e50..088f1d6e04 100644 --- a/services/ecs/describe_instance_types.go +++ b/services/ecs/describe_instance_types.go @@ -76,6 +76,7 @@ type DescribeInstanceTypesRequest struct { MaximumCpuCoreCount requests.Integer `position:"Query" name:"MaximumCpuCoreCount"` MaximumGPUAmount requests.Integer `position:"Query" name:"MaximumGPUAmount"` LocalStorageCategory string `position:"Query" name:"LocalStorageCategory"` + SupportHotModify requests.Boolean `position:"Query" name:"SupportHotModify"` MaximumMemorySize requests.Float `position:"Query" name:"MaximumMemorySize"` InstanceCategory string `position:"Query" name:"InstanceCategory"` MinimumInstancePpsTx requests.Integer `position:"Query" name:"MinimumInstancePpsTx"` diff --git a/services/ecs/describe_price.go b/services/ecs/describe_price.go index 7922f68685..e8710a75c8 100644 --- a/services/ecs/describe_price.go +++ b/services/ecs/describe_price.go @@ -125,6 +125,7 @@ type DescribePricePromotionOptions struct { // DescribePriceDataDisk is a repeated param struct in DescribePriceRequest type DescribePriceDataDisk struct { + ProvisionedIops string `name:"ProvisionedIops"` Size string `name:"Size"` PerformanceLevel string `name:"PerformanceLevel"` Category string `name:"Category"` diff --git a/services/ecs/end_terminal_session.go b/services/ecs/end_terminal_session.go new file mode 100644 index 0000000000..9a5595ff99 --- /dev/null +++ b/services/ecs/end_terminal_session.go @@ -0,0 +1,103 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +import ( + "github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests" + "github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses" +) + +// EndTerminalSession invokes the ecs.EndTerminalSession API synchronously +func (client *Client) EndTerminalSession(request *EndTerminalSessionRequest) (response *EndTerminalSessionResponse, err error) { + response = CreateEndTerminalSessionResponse() + err = client.DoAction(request, response) + return +} + +// EndTerminalSessionWithChan invokes the ecs.EndTerminalSession API asynchronously +func (client *Client) EndTerminalSessionWithChan(request *EndTerminalSessionRequest) (<-chan *EndTerminalSessionResponse, <-chan error) { + responseChan := make(chan *EndTerminalSessionResponse, 1) + errChan := make(chan error, 1) + err := client.AddAsyncTask(func() { + defer close(responseChan) + defer close(errChan) + response, err := client.EndTerminalSession(request) + if err != nil { + errChan <- err + } else { + responseChan <- response + } + }) + if err != nil { + errChan <- err + close(responseChan) + close(errChan) + } + return responseChan, errChan +} + +// EndTerminalSessionWithCallback invokes the ecs.EndTerminalSession API asynchronously +func (client *Client) EndTerminalSessionWithCallback(request *EndTerminalSessionRequest, callback func(response *EndTerminalSessionResponse, err error)) <-chan int { + result := make(chan int, 1) + err := client.AddAsyncTask(func() { + var response *EndTerminalSessionResponse + var err error + defer close(result) + response, err = client.EndTerminalSession(request) + callback(response, err) + result <- 1 + }) + if err != nil { + defer close(result) + callback(nil, err) + result <- 0 + } + return result +} + +// EndTerminalSessionRequest is the request struct for api EndTerminalSession +type EndTerminalSessionRequest struct { + *requests.RpcRequest + ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` + SessionId string `position:"Query" name:"SessionId"` + ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` + OwnerAccount string `position:"Query" name:"OwnerAccount"` + OwnerId requests.Integer `position:"Query" name:"OwnerId"` +} + +// EndTerminalSessionResponse is the response struct for api EndTerminalSession +type EndTerminalSessionResponse struct { + *responses.BaseResponse + RequestId string `json:"RequestId" xml:"RequestId"` +} + +// CreateEndTerminalSessionRequest creates a request to invoke EndTerminalSession API +func CreateEndTerminalSessionRequest() (request *EndTerminalSessionRequest) { + request = &EndTerminalSessionRequest{ + RpcRequest: &requests.RpcRequest{}, + } + request.InitWithApiInfo("Ecs", "2014-05-26", "EndTerminalSession", "ecs", "openAPI") + request.Method = requests.POST + return +} + +// CreateEndTerminalSessionResponse creates a response to parse from EndTerminalSession response +func CreateEndTerminalSessionResponse() (response *EndTerminalSessionResponse) { + response = &EndTerminalSessionResponse{ + BaseResponse: &responses.BaseResponse{}, + } + return +} diff --git a/services/ecs/modify_disk_spec.go b/services/ecs/modify_disk_spec.go index 07a9bb9917..58d4780862 100644 --- a/services/ecs/modify_disk_spec.go +++ b/services/ecs/modify_disk_spec.go @@ -72,6 +72,7 @@ func (client *Client) ModifyDiskSpecWithCallback(request *ModifyDiskSpecRequest, type ModifyDiskSpecRequest struct { *requests.RpcRequest ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` + DestinationZoneId string `position:"Query" name:"DestinationZoneId"` DiskCategory string `position:"Query" name:"DiskCategory"` DiskId string `position:"Query" name:"DiskId"` DryRun requests.Boolean `position:"Query" name:"DryRun"` diff --git a/services/ecs/modify_instance_attribute.go b/services/ecs/modify_instance_attribute.go index 1c0a6ab81d..8b84cdbc3e 100644 --- a/services/ecs/modify_instance_attribute.go +++ b/services/ecs/modify_instance_attribute.go @@ -75,6 +75,7 @@ type ModifyInstanceAttributeRequest struct { Recyclable requests.Boolean `position:"Query" name:"Recyclable"` NetworkInterfaceQueueNumber requests.Integer `position:"Query" name:"NetworkInterfaceQueueNumber"` Description string `position:"Query" name:"Description"` + CpuOptionsThreadsPerCore requests.Integer `position:"Query" name:"CpuOptions.ThreadsPerCore"` DeletionProtection requests.Boolean `position:"Query" name:"DeletionProtection"` UserData string `position:"Query" name:"UserData"` Password string `position:"Query" name:"Password"` @@ -84,6 +85,7 @@ type ModifyInstanceAttributeRequest struct { ImageOptions ModifyInstanceAttributeImageOptions `position:"Query" name:"ImageOptions" type:"Struct"` OSNameEn string `position:"Query" name:"OSNameEn"` EnableJumboFrame requests.Boolean `position:"Query" name:"EnableJumboFrame"` + CpuOptionsCore requests.Integer `position:"Query" name:"CpuOptions.Core"` ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` OwnerAccount string `position:"Query" name:"OwnerAccount"` CreditSpecification string `position:"Query" name:"CreditSpecification"` diff --git a/services/ecs/modify_instance_spec.go b/services/ecs/modify_instance_spec.go index 98e9f97075..4cce07e846 100644 --- a/services/ecs/modify_instance_spec.go +++ b/services/ecs/modify_instance_spec.go @@ -102,6 +102,7 @@ type ModifyInstanceSpecDisk struct { type ModifyInstanceSpecResponse struct { *responses.BaseResponse RequestId string `json:"RequestId" xml:"RequestId"` + TaskId string `json:"TaskId" xml:"TaskId"` } // CreateModifyInstanceSpecRequest creates a request to invoke ModifyInstanceSpec API diff --git a/services/ecs/modify_network_interface_attribute.go b/services/ecs/modify_network_interface_attribute.go index 03c0a54b11..f502f01580 100644 --- a/services/ecs/modify_network_interface_attribute.go +++ b/services/ecs/modify_network_interface_attribute.go @@ -101,6 +101,7 @@ type ModifyNetworkInterfaceAttributeNetworkInterfaceTrafficConfig struct { // ModifyNetworkInterfaceAttributeEnhancedNetwork is a repeated param struct in ModifyNetworkInterfaceAttributeRequest type ModifyNetworkInterfaceAttributeEnhancedNetwork struct { EnableSriov string `name:"EnableSriov"` + EnableRss string `name:"EnableRss"` } // ModifyNetworkInterfaceAttributeConnectionTrackingConfiguration is a repeated param struct in ModifyNetworkInterfaceAttributeRequest diff --git a/services/ecs/start_image_pipeline_execution.go b/services/ecs/start_image_pipeline_execution.go index 04afe3b8b1..30aab2f63c 100644 --- a/services/ecs/start_image_pipeline_execution.go +++ b/services/ecs/start_image_pipeline_execution.go @@ -75,6 +75,7 @@ type StartImagePipelineExecutionRequest struct { ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"` ClientToken string `position:"Query" name:"ClientToken"` TemplateTag *[]StartImagePipelineExecutionTemplateTag `position:"Query" name:"TemplateTag" type:"Repeated"` + Tag *[]StartImagePipelineExecutionTag `position:"Query" name:"Tag" type:"Repeated"` ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"` OwnerAccount string `position:"Query" name:"OwnerAccount"` OwnerId requests.Integer `position:"Query" name:"OwnerId"` @@ -86,6 +87,12 @@ type StartImagePipelineExecutionTemplateTag struct { Value string `name:"Value"` } +// StartImagePipelineExecutionTag is a repeated param struct in StartImagePipelineExecutionRequest +type StartImagePipelineExecutionTag struct { + Key string `name:"Key"` + Value string `name:"Value"` +} + // StartImagePipelineExecutionResponse is the response struct for api StartImagePipelineExecution type StartImagePipelineExecutionResponse struct { *responses.BaseResponse diff --git a/services/ecs/struct_advanced_options.go b/services/ecs/struct_advanced_options.go new file mode 100644 index 0000000000..dbd449414c --- /dev/null +++ b/services/ecs/struct_advanced_options.go @@ -0,0 +1,23 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// AdvancedOptions is a nested struct in ecs response +type AdvancedOptions struct { + RetainCloudAssistant bool `json:"RetainCloudAssistant" xml:"RetainCloudAssistant"` + SkipBuildImage bool `json:"SkipBuildImage" xml:"SkipBuildImage"` + SkipCheckImage bool `json:"SkipCheckImage" xml:"SkipCheckImage"` +} diff --git a/services/ecs/struct_attribute.go b/services/ecs/struct_attribute.go index 74c7034643..4c9d9009ca 100644 --- a/services/ecs/struct_attribute.go +++ b/services/ecs/struct_attribute.go @@ -17,6 +17,6 @@ package ecs // Attribute is a nested struct in ecs response type Attribute struct { - Code string `json:"Code" xml:"Code"` Value string `json:"Value" xml:"Value"` + Code string `json:"Code" xml:"Code"` } diff --git a/services/ecs/struct_attributes_in_describe_instance_modification_price.go b/services/ecs/struct_attributes_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..98d4cad580 --- /dev/null +++ b/services/ecs/struct_attributes_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// AttributesInDescribeInstanceModificationPrice is a nested struct in ecs response +type AttributesInDescribeInstanceModificationPrice struct { + Attribute []Attribute `json:"Attribute" xml:"Attribute"` +} diff --git a/services/ecs/struct_attributes.go b/services/ecs/struct_attributes_in_describe_price.go similarity index 87% rename from services/ecs/struct_attributes.go rename to services/ecs/struct_attributes_in_describe_price.go index 72e09eddf3..98dbf4082e 100644 --- a/services/ecs/struct_attributes.go +++ b/services/ecs/struct_attributes_in_describe_price.go @@ -15,7 +15,7 @@ package ecs // Code generated by Alibaba Cloud SDK Code Generator. // Changes may cause incorrect behavior and will be lost if the code is regenerated. -// Attributes is a nested struct in ecs response -type Attributes struct { +// AttributesInDescribePrice is a nested struct in ecs response +type AttributesInDescribePrice struct { Attribute []Attribute `json:"Attribute" xml:"Attribute"` } diff --git a/services/ecs/struct_coupon.go b/services/ecs/struct_coupon.go index 21b400ec21..19c4455008 100644 --- a/services/ecs/struct_coupon.go +++ b/services/ecs/struct_coupon.go @@ -17,11 +17,11 @@ package ecs // Coupon is a nested struct in ecs response type Coupon struct { - IsSelected bool `json:"IsSelected" xml:"IsSelected"` - CouponNo string `json:"CouponNo" xml:"CouponNo"` - Description string `json:"Description" xml:"Description"` - Name string `json:"Name" xml:"Name"` - DiscountOff float64 `json:"DiscountOff" xml:"DiscountOff"` - OptionCode string `json:"OptionCode" xml:"OptionCode"` - RuleIds RuleIdsInDescribePrice `json:"RuleIds" xml:"RuleIds"` + Name string `json:"Name" xml:"Name"` + CouponNo string `json:"CouponNo" xml:"CouponNo"` + OptionCode string `json:"OptionCode" xml:"OptionCode"` + IsSelected bool `json:"IsSelected" xml:"IsSelected"` + DiscountOff float64 `json:"DiscountOff" xml:"DiscountOff"` + Description string `json:"Description" xml:"Description"` + RuleIds RuleIdsInDescribeInstanceModificationPrice `json:"RuleIds" xml:"RuleIds"` } diff --git a/services/ecs/struct_coupons_in_describe_instance_modification_price.go b/services/ecs/struct_coupons_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..46b42f9b2d --- /dev/null +++ b/services/ecs/struct_coupons_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// CouponsInDescribeInstanceModificationPrice is a nested struct in ecs response +type CouponsInDescribeInstanceModificationPrice struct { + Coupon []Coupon `json:"Coupon" xml:"Coupon"` +} diff --git a/services/ecs/struct_coupons.go b/services/ecs/struct_coupons_in_describe_price.go similarity index 88% rename from services/ecs/struct_coupons.go rename to services/ecs/struct_coupons_in_describe_price.go index fb2733c65f..c2acddd308 100644 --- a/services/ecs/struct_coupons.go +++ b/services/ecs/struct_coupons_in_describe_price.go @@ -15,7 +15,7 @@ package ecs // Code generated by Alibaba Cloud SDK Code Generator. // Changes may cause incorrect behavior and will be lost if the code is regenerated. -// Coupons is a nested struct in ecs response -type Coupons struct { +// CouponsInDescribePrice is a nested struct in ecs response +type CouponsInDescribePrice struct { Coupon []Coupon `json:"Coupon" xml:"Coupon"` } diff --git a/services/ecs/struct_detail_info.go b/services/ecs/struct_detail_info.go index 019a1b2b54..50e1b607d5 100644 --- a/services/ecs/struct_detail_info.go +++ b/services/ecs/struct_detail_info.go @@ -17,14 +17,14 @@ package ecs // DetailInfo is a nested struct in ecs response type DetailInfo struct { - Resource string `json:"Resource" xml:"Resource"` - OriginalPrice float64 `json:"OriginalPrice" xml:"OriginalPrice"` - DiscountPrice float64 `json:"DiscountPrice" xml:"DiscountPrice"` - TradePrice float64 `json:"TradePrice" xml:"TradePrice"` - StandardPrice float64 `json:"StandardPrice" xml:"StandardPrice"` - StandardDiscountPrice float64 `json:"StandardDiscountPrice" xml:"StandardDiscountPrice"` - IsContractPromotion bool `json:"IsContractPromotion" xml:"IsContractPromotion"` - DepreciateInfo DepreciateInfo `json:"DepreciateInfo" xml:"DepreciateInfo"` - SubRules SubRulesInDescribePrice `json:"SubRules" xml:"SubRules"` - Attributes Attributes `json:"Attributes" xml:"Attributes"` + DiscountPrice float64 `json:"DiscountPrice" xml:"DiscountPrice"` + TradePrice float64 `json:"TradePrice" xml:"TradePrice"` + OriginalPrice float64 `json:"OriginalPrice" xml:"OriginalPrice"` + StandardPrice float64 `json:"StandardPrice" xml:"StandardPrice"` + StandardDiscountPrice float64 `json:"StandardDiscountPrice" xml:"StandardDiscountPrice"` + IsContractPromotion bool `json:"IsContractPromotion" xml:"IsContractPromotion"` + Resource string `json:"Resource" xml:"Resource"` + DepreciateInfo DepreciateInfo `json:"DepreciateInfo" xml:"DepreciateInfo"` + Attributes AttributesInDescribeInstanceModificationPrice `json:"Attributes" xml:"Attributes"` + SubRules SubRulesInDescribeInstanceModificationPrice `json:"SubRules" xml:"SubRules"` } diff --git a/services/ecs/struct_detail_infos_in_describe_instance_modification_price.go b/services/ecs/struct_detail_infos_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..2e392bd5f3 --- /dev/null +++ b/services/ecs/struct_detail_infos_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// DetailInfosInDescribeInstanceModificationPrice is a nested struct in ecs response +type DetailInfosInDescribeInstanceModificationPrice struct { + DetailInfo []DetailInfo `json:"DetailInfo" xml:"DetailInfo"` +} diff --git a/services/ecs/struct_disk_device_mapping.go b/services/ecs/struct_disk_device_mapping.go index 7fbb641a8b..1e951871af 100644 --- a/services/ecs/struct_disk_device_mapping.go +++ b/services/ecs/struct_disk_device_mapping.go @@ -17,13 +17,17 @@ package ecs // DiskDeviceMapping is a nested struct in ecs response type DiskDeviceMapping struct { - Progress string `json:"Progress" xml:"Progress"` + OSSBucket string `json:"OSSBucket" xml:"OSSBucket"` + OSSObject string `json:"OSSObject" xml:"OSSObject"` Format string `json:"Format" xml:"Format"` Device string `json:"Device" xml:"Device"` + ImportOSSObject string `json:"ImportOSSObject" xml:"ImportOSSObject"` + Encrypted bool `json:"Encrypted" xml:"Encrypted"` + Progress string `json:"Progress" xml:"Progress"` + DiskImageSize int `json:"DiskImageSize" xml:"DiskImageSize"` Size string `json:"Size" xml:"Size"` RemainTime int `json:"RemainTime" xml:"RemainTime"` SnapshotId string `json:"SnapshotId" xml:"SnapshotId"` - ImportOSSObject string `json:"ImportOSSObject" xml:"ImportOSSObject"` ImportOSSBucket string `json:"ImportOSSBucket" xml:"ImportOSSBucket"` Type string `json:"Type" xml:"Type"` } diff --git a/services/ecs/struct_disk_device_mappings_in_describe_image_pipelines.go b/services/ecs/struct_disk_device_mappings_in_describe_image_pipelines.go new file mode 100644 index 0000000000..1fa01b0afc --- /dev/null +++ b/services/ecs/struct_disk_device_mappings_in_describe_image_pipelines.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// DiskDeviceMappingsInDescribeImagePipelines is a nested struct in ecs response +type DiskDeviceMappingsInDescribeImagePipelines struct { + DiskDeviceMapping []DiskDeviceMapping `json:"DiskDeviceMapping" xml:"DiskDeviceMapping"` +} diff --git a/services/ecs/struct_enhanced_network.go b/services/ecs/struct_enhanced_network.go index a26687822d..eeda896fab 100644 --- a/services/ecs/struct_enhanced_network.go +++ b/services/ecs/struct_enhanced_network.go @@ -19,5 +19,7 @@ package ecs type EnhancedNetwork struct { EnableSriov bool `json:"EnableSriov" xml:"EnableSriov"` SriovSupport bool `json:"SriovSupport" xml:"SriovSupport"` + RssSupport bool `json:"RssSupport" xml:"RssSupport"` VfQueueNumberPerEni int `json:"VfQueueNumberPerEni" xml:"VfQueueNumberPerEni"` + EnableRss bool `json:"EnableRss" xml:"EnableRss"` } diff --git a/services/ecs/struct_features.go b/services/ecs/struct_features.go index 061283138f..d4b5b301b9 100644 --- a/services/ecs/struct_features.go +++ b/services/ecs/struct_features.go @@ -17,6 +17,10 @@ package ecs // Features is a nested struct in ecs response type Features struct { - NvmeSupport string `json:"NvmeSupport" xml:"NvmeSupport"` - ImdsSupport string `json:"ImdsSupport" xml:"ImdsSupport"` + MemoryOnlineUpgrade string `json:"MemoryOnlineUpgrade" xml:"MemoryOnlineUpgrade"` + NvmeSupport string `json:"NvmeSupport" xml:"NvmeSupport"` + CpuOnlineDowngrade string `json:"CpuOnlineDowngrade" xml:"CpuOnlineDowngrade"` + ImdsSupport string `json:"ImdsSupport" xml:"ImdsSupport"` + MemoryOnlineDowngrade string `json:"MemoryOnlineDowngrade" xml:"MemoryOnlineDowngrade"` + CpuOnlineUpgrade string `json:"CpuOnlineUpgrade" xml:"CpuOnlineUpgrade"` } diff --git a/services/ecs/struct_image_pipeline_set.go b/services/ecs/struct_image_pipeline_set.go index 2f1b39054a..e64c0d6a16 100644 --- a/services/ecs/struct_image_pipeline_set.go +++ b/services/ecs/struct_image_pipeline_set.go @@ -34,7 +34,10 @@ type ImagePipelineSet struct { RepairMode string `json:"RepairMode" xml:"RepairMode"` TestContent string `json:"TestContent" xml:"TestContent"` ImageFamily string `json:"ImageFamily" xml:"ImageFamily"` + NvmeSupport string `json:"NvmeSupport" xml:"NvmeSupport"` ToRegionIds ToRegionIds `json:"ToRegionIds" xml:"ToRegionIds"` AddAccounts AddAccounts `json:"AddAccounts" xml:"AddAccounts"` + ImportImageOptions ImportImageOptions `json:"ImportImageOptions" xml:"ImportImageOptions"` + AdvancedOptions AdvancedOptions `json:"AdvancedOptions" xml:"AdvancedOptions"` Tags TagsInDescribeImagePipelines `json:"Tags" xml:"Tags"` } diff --git a/services/ecs/struct_import_image_options.go b/services/ecs/struct_import_image_options.go new file mode 100644 index 0000000000..dec0252f06 --- /dev/null +++ b/services/ecs/struct_import_image_options.go @@ -0,0 +1,28 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// ImportImageOptions is a nested struct in ecs response +type ImportImageOptions struct { + Architecture string `json:"Architecture" xml:"Architecture"` + OSType string `json:"OSType" xml:"OSType"` + Platform string `json:"Platform" xml:"Platform"` + BootMode string `json:"BootMode" xml:"BootMode"` + LicenseType string `json:"LicenseType" xml:"LicenseType"` + RetainImportedImage bool `json:"RetainImportedImage" xml:"RetainImportedImage"` + Features Features `json:"Features" xml:"Features"` + DiskDeviceMappings DiskDeviceMappingsInDescribeImagePipelines `json:"DiskDeviceMappings" xml:"DiskDeviceMappings"` +} diff --git a/services/ecs/struct_price.go b/services/ecs/struct_price.go index 1e46c4c529..a39cd59955 100644 --- a/services/ecs/struct_price.go +++ b/services/ecs/struct_price.go @@ -17,21 +17,21 @@ package ecs // Price is a nested struct in ecs response type Price struct { - SpotInstanceTypeOriginalPrice float64 `json:"SpotInstanceTypeOriginalPrice" xml:"SpotInstanceTypeOriginalPrice"` - TradePrice float64 `json:"TradePrice" xml:"TradePrice"` - ReservedInstanceHourTradePrice float64 `json:"ReservedInstanceHourTradePrice" xml:"ReservedInstanceHourTradePrice"` - OriginalPrice float64 `json:"OriginalPrice" xml:"OriginalPrice"` - Currency string `json:"Currency" xml:"Currency"` - IsContractPromotion bool `json:"IsContractPromotion" xml:"IsContractPromotion"` - SpotInstanceTypePrice float64 `json:"SpotInstanceTypePrice" xml:"SpotInstanceTypePrice"` - DiscountPrice float64 `json:"DiscountPrice" xml:"DiscountPrice"` - StandardPrice float64 `json:"StandardPrice" xml:"StandardPrice"` - StandardDiscountPrice float64 `json:"StandardDiscountPrice" xml:"StandardDiscountPrice"` - ReservedInstanceHourPrice float64 `json:"ReservedInstanceHourPrice" xml:"ReservedInstanceHourPrice"` - ReservedInstanceHourDiscountPrice float64 `json:"ReservedInstanceHourDiscountPrice" xml:"ReservedInstanceHourDiscountPrice"` - RuleIdSet RuleIdSet `json:"RuleIdSet" xml:"RuleIdSet"` - DepreciateInfo DepreciateInfo `json:"DepreciateInfo" xml:"DepreciateInfo"` - Promotions Promotions `json:"Promotions" xml:"Promotions"` - Coupons Coupons `json:"Coupons" xml:"Coupons"` - DetailInfos DetailInfosInDescribePrice `json:"DetailInfos" xml:"DetailInfos"` + SpotInstanceTypeOriginalPrice float64 `json:"SpotInstanceTypeOriginalPrice" xml:"SpotInstanceTypeOriginalPrice"` + TradePrice float64 `json:"TradePrice" xml:"TradePrice"` + ReservedInstanceHourTradePrice float64 `json:"ReservedInstanceHourTradePrice" xml:"ReservedInstanceHourTradePrice"` + OriginalPrice float64 `json:"OriginalPrice" xml:"OriginalPrice"` + Currency string `json:"Currency" xml:"Currency"` + IsContractPromotion bool `json:"IsContractPromotion" xml:"IsContractPromotion"` + SpotInstanceTypePrice float64 `json:"SpotInstanceTypePrice" xml:"SpotInstanceTypePrice"` + DiscountPrice float64 `json:"DiscountPrice" xml:"DiscountPrice"` + StandardPrice float64 `json:"StandardPrice" xml:"StandardPrice"` + StandardDiscountPrice float64 `json:"StandardDiscountPrice" xml:"StandardDiscountPrice"` + ReservedInstanceHourPrice float64 `json:"ReservedInstanceHourPrice" xml:"ReservedInstanceHourPrice"` + ReservedInstanceHourDiscountPrice float64 `json:"ReservedInstanceHourDiscountPrice" xml:"ReservedInstanceHourDiscountPrice"` + RuleIdSet RuleIdSetInDescribeInstanceModificationPrice `json:"RuleIdSet" xml:"RuleIdSet"` + DepreciateInfo DepreciateInfo `json:"DepreciateInfo" xml:"DepreciateInfo"` + Coupons CouponsInDescribeInstanceModificationPrice `json:"Coupons" xml:"Coupons"` + Promotions PromotionsInDescribeInstanceModificationPrice `json:"Promotions" xml:"Promotions"` + DetailInfos DetailInfosInDescribeInstanceModificationPrice `json:"DetailInfos" xml:"DetailInfos"` } diff --git a/services/ecs/struct_price_warning.go b/services/ecs/struct_price_warning.go index 19a219c711..4dee013178 100644 --- a/services/ecs/struct_price_warning.go +++ b/services/ecs/struct_price_warning.go @@ -17,6 +17,6 @@ package ecs // PriceWarning is a nested struct in ecs response type PriceWarning struct { - Msg string `json:"Msg" xml:"Msg"` Code string `json:"Code" xml:"Code"` + Msg string `json:"Msg" xml:"Msg"` } diff --git a/services/ecs/struct_promotion.go b/services/ecs/struct_promotion.go index cc79a114b7..fb739dbfe0 100644 --- a/services/ecs/struct_promotion.go +++ b/services/ecs/struct_promotion.go @@ -17,7 +17,9 @@ package ecs // Promotion is a nested struct in ecs response type Promotion struct { - Name string `json:"Name" xml:"Name"` - DiscountOff float64 `json:"DiscountOff" xml:"DiscountOff"` - RuleIds RuleIdsInDescribePrice `json:"RuleIds" xml:"RuleIds"` + Name string `json:"Name" xml:"Name"` + RemainQuota float64 `json:"RemainQuota" xml:"RemainQuota"` + DiscountOff float64 `json:"DiscountOff" xml:"DiscountOff"` + Type string `json:"Type" xml:"Type"` + RuleIds RuleIdsInDescribeInstanceModificationPrice `json:"RuleIds" xml:"RuleIds"` } diff --git a/services/ecs/struct_promotions_in_describe_instance_modification_price.go b/services/ecs/struct_promotions_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..a14399c4b2 --- /dev/null +++ b/services/ecs/struct_promotions_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// PromotionsInDescribeInstanceModificationPrice is a nested struct in ecs response +type PromotionsInDescribeInstanceModificationPrice struct { + Promotion []Promotion `json:"Promotion" xml:"Promotion"` +} diff --git a/services/ecs/struct_promotions.go b/services/ecs/struct_promotions_in_describe_price.go similarity index 87% rename from services/ecs/struct_promotions.go rename to services/ecs/struct_promotions_in_describe_price.go index a04829c571..2f31bf1214 100644 --- a/services/ecs/struct_promotions.go +++ b/services/ecs/struct_promotions_in_describe_price.go @@ -15,7 +15,7 @@ package ecs // Code generated by Alibaba Cloud SDK Code Generator. // Changes may cause incorrect behavior and will be lost if the code is regenerated. -// Promotions is a nested struct in ecs response -type Promotions struct { +// PromotionsInDescribePrice is a nested struct in ecs response +type PromotionsInDescribePrice struct { Promotion []Promotion `json:"Promotion" xml:"Promotion"` } diff --git a/services/ecs/struct_rule_id_set_in_describe_instance_modification_price.go b/services/ecs/struct_rule_id_set_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..d76121fd4f --- /dev/null +++ b/services/ecs/struct_rule_id_set_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// RuleIdSetInDescribeInstanceModificationPrice is a nested struct in ecs response +type RuleIdSetInDescribeInstanceModificationPrice struct { + RuleId []string `json:"RuleId" xml:"RuleId"` +} diff --git a/services/ecs/struct_rule_id_set.go b/services/ecs/struct_rule_id_set_in_describe_price.go similarity index 87% rename from services/ecs/struct_rule_id_set.go rename to services/ecs/struct_rule_id_set_in_describe_price.go index 9ab7f8a370..f559d58dce 100644 --- a/services/ecs/struct_rule_id_set.go +++ b/services/ecs/struct_rule_id_set_in_describe_price.go @@ -15,7 +15,7 @@ package ecs // Code generated by Alibaba Cloud SDK Code Generator. // Changes may cause incorrect behavior and will be lost if the code is regenerated. -// RuleIdSet is a nested struct in ecs response -type RuleIdSet struct { +// RuleIdSetInDescribePrice is a nested struct in ecs response +type RuleIdSetInDescribePrice struct { RuleId []string `json:"RuleId" xml:"RuleId"` } diff --git a/services/ecs/struct_rule_ids_in_describe_instance_modification_price.go b/services/ecs/struct_rule_ids_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..7fefbd8f7b --- /dev/null +++ b/services/ecs/struct_rule_ids_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// RuleIdsInDescribeInstanceModificationPrice is a nested struct in ecs response +type RuleIdsInDescribeInstanceModificationPrice struct { + RuleId []int64 `json:"RuleId" xml:"RuleId"` +} diff --git a/services/ecs/struct_sub_rules_in_describe_instance_modification_price.go b/services/ecs/struct_sub_rules_in_describe_instance_modification_price.go new file mode 100644 index 0000000000..a29ef84aa9 --- /dev/null +++ b/services/ecs/struct_sub_rules_in_describe_instance_modification_price.go @@ -0,0 +1,21 @@ +package ecs + +//Licensed under the Apache License, Version 2.0 (the "License"); +//you may not use this file except in compliance with the License. +//You may obtain a copy of the License at +// +//http://www.apache.org/licenses/LICENSE-2.0 +// +//Unless required by applicable law or agreed to in writing, software +//distributed under the License is distributed on an "AS IS" BASIS, +//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +//See the License for the specific language governing permissions and +//limitations under the License. +// +// Code generated by Alibaba Cloud SDK Code Generator. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +// SubRulesInDescribeInstanceModificationPrice is a nested struct in ecs response +type SubRulesInDescribeInstanceModificationPrice struct { + Rule []Rule `json:"Rule" xml:"Rule"` +}