Documentation ¶
Index ¶
- func CreateURL(c *gophercloud.ServiceClient) string
- func DeleteURL(c *gophercloud.ServiceClient, publicipId string) string
- func GetURL(c *gophercloud.ServiceClient, publicipId string) string
- func List(client *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager
- func ListURL(c *gophercloud.ServiceClient) string
- func UpdateURL(c *gophercloud.ServiceClient, publicipId string) string
- type BandWidth
- type CreateOpts
- type CreateOptsBuilder
- type CreateResult
- type DeleteResult
- type GetResult
- type ListOpts
- type ListOptsBuilder
- type Profile
- type PublicIP
- type PublicIPCreateResp
- type PublicIPPage
- type PublicIPRequest
- type PublicIPUpdateResp
- type UpdateOpts
- type UpdateOptsBuilder
- type UpdateResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func List ¶
func List(client *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager
Types ¶
type BandWidth ¶
type BandWidth struct { // Specifies the bandwidth name. The value is a string of 1 to 64 // characters that can contain letters, digits, underscores (_), and hyphens (-). This // parameter is mandatory when share_type is set to PER and is optional when share_type // is set to WHOLE with an ID specified. Name string `json:"name,omitempty"` // Specifies the bandwidth size. The value ranges from 1 Mbit/s to // 300 Mbit/s. This parameter is mandatory when share_type is set to PER and is optional // when share_type is set to WHOLE with an ID specified. Size int `json:"size,omitempty"` // Specifies the ID of the bandwidth. You can specify an earlier // shared bandwidth when applying for an elastic IP address for the bandwidth whose type // is set to WHOLE. The bandwidth whose type is set to WHOLE exclusively uses its own // ID. The value can be the ID of the bandwidth whose type is set to WHOLE. ID string `json:"id,omitempty"` // value can be PER or WHOLE. ShareType string `json:"share_type" required:"true"` // Specifies the charging mode (by traffic or by bandwidth). The // value can be bandwidth or traffic. If the value is an empty character string or no // value is specified, default value bandwidth is used. ChargeMode string `json:"charge_mode,omitempty"` }
type CreateOpts ¶
type CreateOpts struct { // Specifies the elastic IP address objects. Publicip PublicIPRequest `json:"publicip" required:"true"` // Specifies the bandwidth objects. Bandwidth BandWidth `json:"bandwidth" required:"true"` // Enterprise project ID. The maximum length is 36 bytes, with the U-ID format of the hyphen "-", or the string "0". //When creating an elastic public IP address, bind the enterprise project ID to the elastic public network IP. EnterpriseProjectId string `json:"enterprise_project_id,omitempty"` }
func (CreateOpts) ToCreatePublicIPMap ¶
func (opts CreateOpts) ToCreatePublicIPMap() (map[string]interface{}, error)
type CreateOptsBuilder ¶
type CreateResult ¶
type CreateResult struct {
// contains filtered or unexported fields
}
func Create ¶
func Create(client *gophercloud.ServiceClient, opts CreateOptsBuilder) (r CreateResult)
func (CreateResult) Extract ¶
func (r CreateResult) Extract() (*PublicIPCreateResp, error)
type DeleteResult ¶
type DeleteResult struct {
gophercloud.ErrResult
}
func Delete ¶
func Delete(client *gophercloud.ServiceClient, publicipId string) (r DeleteResult)
type ListOpts ¶
type ListOpts struct { // Specifies the resource ID of pagination query. If the parameter // is left blank, only resources on the first page are queried. Marker string `q:"marker"` // Specifies the number of records returned on each page. The // value ranges from 0 to intmax. Limit int `q:"limit"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version"` // enterprise_project_id // You can use this field to filter the elastic public IP under an enterprise project. EnterpriseProjectId string `json:"enterprise_project_id"` }
func (ListOpts) ToListPublicIPQuery ¶
type ListOptsBuilder ¶
type PublicIP ¶
type PublicIP struct { // Specifies the ID of the elastic IP address, which uniquely // identifies the elastic IP address. ID string `json:"id"` // Specifies the status of the elastic IP address. Status string `json:"status"` // ext data for order info Profile Profile `json:"profile"` // Specifies the type of the elastic IP address. Type string `json:"type"` // Specifies the obtained elastic IP address. PublicIpAddress string `json:"public_ip_address"` // Specifies the obtained elastic IPv6 address. PublicIpV6Address string `json:"public_ipv6_address"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version"` // Specifies the private IP address bound to the elastic IP // address. PrivateIpAddress string `json:"private_ip_address,omitempty"` // Specifies the port ID. PortId string `json:"port_id,omitempty"` // Specifies the tenant ID of the operator. TenantId string `json:"tenant_id"` // Specifies the time for applying for the elastic IP address. CreateTime string `json:"create_time"` // Specifies the bandwidth ID of the elastic IP address. BandwidthId string `json:"bandwidth_id"` // Specifies the bandwidth size. BandwidthSize int `json:"bandwidth_size"` BandwidthShareType string `json:"bandwidth_share_type"` // // Specifies the bandwidth name. BandwidthName string `json:"bandwidth_name"` // Enterprise project ID. The maximum length is 36 bytes, with the U-ID format of the hyphen "-", or the string "0". //When creating an elastic public IP address, bind the enterprise project ID to the elastic public network IP. EnterpriseProjectId string `json:"enterprise_project_id,omitempty"` }
func ExtractPublicIPs ¶
func ExtractPublicIPs(r pagination.Page) ([]PublicIP, error)
type PublicIPCreateResp ¶
type PublicIPCreateResp struct { // Specifies the ID of the elastic IP address, which uniquely // identifies the elastic IP address. ID string `json:"id"` // Specifies the status of the elastic IP address. Status string `json:"status"` // Specifies the type of the elastic IP address. Type string `json:"type"` // Specifies the obtained elastic IP address. PublicIpAddress string `json:"public_ip_address"` // Specifies the obtained elastic IPv6 address. PublicIpV6Address string `json:"public_ipv6_address"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version"` // Specifies the tenant ID of the operator. TenantId string `json:"tenant_id"` // Specifies the time for applying for the elastic IP address. CreateTime string `json:"create_time"` // Specifies the bandwidth size. BandwidthSize int `json:"bandwidth_size"` // Enterprise project ID. The maximum length is 36 bytes, with the U-ID format of the hyphen "-", or the string "0". //When creating an elastic public IP address, bind the enterprise project ID to the elastic public network IP. EnterpriseProjectId string `json:"enterprise_project_id,omitempty"` }
type PublicIPPage ¶
type PublicIPPage struct {
pagination.LinkedPageBase
}
func (PublicIPPage) IsEmpty ¶
func (r PublicIPPage) IsEmpty() (bool, error)
IsEmpty checks whether a NetworkPage struct is empty.
func (PublicIPPage) NextPageURL ¶
func (r PublicIPPage) NextPageURL() (string, error)
type PublicIPRequest ¶
type PublicIPRequest struct { // Specifies the type of the elastic IP address. The value can the // 5_telcom, 5_union, 5_bgp, or 5_sbgp. China Northeast: 5_telcom and 5_union China // South: 5_sbgp China East: 5_sbgp China North: 5_bgp and 5_sbgp The value must be a // type supported by the system. The value can be 5_telcom, 5_union, or 5_bgp. Type string `json:"type" required:"true"` // Specifies the elastic IP address to be obtained. The value must // be a valid IP address in the available IP address segment. IpAddress string `json:"ip_address,omitempty"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version,omitempty"` }
type PublicIPUpdateResp ¶
type PublicIPUpdateResp struct { // Specifies the ID of the elastic IP address, which uniquely // identifies the elastic IP address. ID string `json:"id"` // Specifies the status of the elastic IP address. Status string `json:"status"` // Specifies the type of the elastic IP address. Type string `json:"type"` // Specifies the obtained elastic IP address. PublicIpAddress string `json:"public_ip_address"` // Specifies the obtained elastic IPv6 address. PublicIpV6Address string `json:"public_ipv6_address"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version"` // Specifies the port ID. PortId string `json:"port_id,omitempty"` // Specifies the tenant ID of the operator. TenantId string `json:"tenant_id"` // Specifies the time for applying for the elastic IP address. CreateTime string `json:"create_time"` // Specifies the bandwidth size. BandwidthSize int `json:"bandwidth_size"` // Specifies the bandwidth ID of the elastic IP address. BandwidthId string `json:"bandwidth_id"` }
type UpdateOpts ¶
type UpdateOpts struct { // Specifies the port ID. PortId string `json:"port_id,omitempty"` //Value range: 4, 6, respectively, to create ipv4 and ipv6, when not created ipv4 by default IPVersion int `json:"ip_version,omitempty"` }
func (UpdateOpts) ToUpdatePublicIPMap ¶
func (opts UpdateOpts) ToUpdatePublicIPMap() (map[string]interface{}, error)
type UpdateOptsBuilder ¶
type UpdateResult ¶
type UpdateResult struct {
// contains filtered or unexported fields
}
func Update ¶
func Update(client *gophercloud.ServiceClient, publicipId string, opts UpdateOptsBuilder) (r UpdateResult)
func (UpdateResult) Extract ¶
func (r UpdateResult) Extract() (*PublicIPUpdateResp, error)
Click to show internal directories.
Click to hide internal directories.