packer-cn/vendor/github.com/jdcloud-api/jdcloud-sdk-go/services/vpc/apis/CreateSubnet.go

165 lines
6.1 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Copyright 2018 JDCLOUD.COM
//
// 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.
//
// NOTE: This class is auto generated by the jdcloud code generator program.
package apis
import (
"github.com/jdcloud-api/jdcloud-sdk-go/core"
)
type CreateSubnetRequest struct {
core.JDCloudRequest
/* Region ID */
RegionId string `json:"regionId"`
/* 子网所属vpc的Id */
VpcId string `json:"vpcId"`
/* 子网名称,只允许输入中文、数字、大小写字母、英文下划线“_”及中划线“-”不允许为空且不超过32字符。 */
SubnetName string `json:"subnetName"`
/* 子网网段vpc内子网网段不能重叠cidr的取值范围10.0.0.0/8、172.16.0.0/12和192.168.0.0/16及它们包含的子网且子网掩码长度为16-28之间如果vpc含有cidr则必须为vpc所在cidr的子网 */
AddressPrefix string `json:"addressPrefix"`
/* 子网关联的路由表Id, 默认为vpc的默认路由表 (Optional) */
RouteTableId *string `json:"routeTableId"`
/* 子网描述信息,允许输入UTF-8编码下的全部字符不超过256字符。 (Optional) */
Description *string `json:"description"`
}
/*
* param regionId: Region ID (Required)
* param vpcId: 子网所属vpc的Id (Required)
* param subnetName: 子网名称,只允许输入中文、数字、大小写字母、英文下划线“_”及中划线“-”不允许为空且不超过32字符。 (Required)
* param addressPrefix: 子网网段vpc内子网网段不能重叠cidr的取值范围10.0.0.0/8、172.16.0.0/12和192.168.0.0/16及它们包含的子网且子网掩码长度为16-28之间如果vpc含有cidr则必须为vpc所在cidr的子网 (Required)
*
* @Deprecated, not compatible when mandatory parameters changed
*/
func NewCreateSubnetRequest(
regionId string,
vpcId string,
subnetName string,
addressPrefix string,
) *CreateSubnetRequest {
return &CreateSubnetRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/subnets/",
Method: "POST",
Header: nil,
Version: "v1",
},
RegionId: regionId,
VpcId: vpcId,
SubnetName: subnetName,
AddressPrefix: addressPrefix,
}
}
/*
* param regionId: Region ID (Required)
* param vpcId: 子网所属vpc的Id (Required)
* param subnetName: 子网名称,只允许输入中文、数字、大小写字母、英文下划线“_”及中划线“-”不允许为空且不超过32字符。 (Required)
* param addressPrefix: 子网网段vpc内子网网段不能重叠cidr的取值范围10.0.0.0/8、172.16.0.0/12和192.168.0.0/16及它们包含的子网且子网掩码长度为16-28之间如果vpc含有cidr则必须为vpc所在cidr的子网 (Required)
* param routeTableId: 子网关联的路由表Id, 默认为vpc的默认路由表 (Optional)
* param description: 子网描述信息,允许输入UTF-8编码下的全部字符不超过256字符。 (Optional)
*/
func NewCreateSubnetRequestWithAllParams(
regionId string,
vpcId string,
subnetName string,
addressPrefix string,
routeTableId *string,
description *string,
) *CreateSubnetRequest {
return &CreateSubnetRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/subnets/",
Method: "POST",
Header: nil,
Version: "v1",
},
RegionId: regionId,
VpcId: vpcId,
SubnetName: subnetName,
AddressPrefix: addressPrefix,
RouteTableId: routeTableId,
Description: description,
}
}
/* This constructor has better compatible ability when API parameters changed */
func NewCreateSubnetRequestWithoutParam() *CreateSubnetRequest {
return &CreateSubnetRequest{
JDCloudRequest: core.JDCloudRequest{
URL: "/regions/{regionId}/subnets/",
Method: "POST",
Header: nil,
Version: "v1",
},
}
}
/* param regionId: Region ID(Required) */
func (r *CreateSubnetRequest) SetRegionId(regionId string) {
r.RegionId = regionId
}
/* param vpcId: 子网所属vpc的Id(Required) */
func (r *CreateSubnetRequest) SetVpcId(vpcId string) {
r.VpcId = vpcId
}
/* param subnetName: 子网名称,只允许输入中文、数字、大小写字母、英文下划线“_”及中划线“-”不允许为空且不超过32字符。(Required) */
func (r *CreateSubnetRequest) SetSubnetName(subnetName string) {
r.SubnetName = subnetName
}
/* param addressPrefix: 子网网段vpc内子网网段不能重叠cidr的取值范围10.0.0.0/8、172.16.0.0/12和192.168.0.0/16及它们包含的子网且子网掩码长度为16-28之间如果vpc含有cidr则必须为vpc所在cidr的子网(Required) */
func (r *CreateSubnetRequest) SetAddressPrefix(addressPrefix string) {
r.AddressPrefix = addressPrefix
}
/* param routeTableId: 子网关联的路由表Id, 默认为vpc的默认路由表(Optional) */
func (r *CreateSubnetRequest) SetRouteTableId(routeTableId string) {
r.RouteTableId = &routeTableId
}
/* param description: 子网描述信息,允许输入UTF-8编码下的全部字符不超过256字符。(Optional) */
func (r *CreateSubnetRequest) SetDescription(description string) {
r.Description = &description
}
// GetRegionId returns path parameter 'regionId' if exist,
// otherwise return empty string
func (r CreateSubnetRequest) GetRegionId() string {
return r.RegionId
}
type CreateSubnetResponse struct {
RequestID string `json:"requestId"`
Error core.ErrorResponse `json:"error"`
Result CreateSubnetResult `json:"result"`
}
type CreateSubnetResult struct {
SubnetId string `json:"subnetId"`
}