github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/evs/extensions/volumeactions/terminate_connection.go (about) 1 package volumeactions 2 3 import "github.com/opentelekomcloud/gophertelekomcloud" 4 5 type TerminateConnectionOpts struct { 6 IP string `json:"ip,omitempty"` 7 Host string `json:"host,omitempty"` 8 Initiator string `json:"initiator,omitempty"` 9 Wwpns []string `json:"wwpns,omitempty"` 10 Wwnns string `json:"wwnns,omitempty"` 11 Multipath *bool `json:"multipath,omitempty"` 12 Platform string `json:"platform,omitempty"` 13 OSType string `json:"os_type,omitempty"` 14 } 15 16 func (opts TerminateConnectionOpts) ToVolumeTerminateConnectionMap() (map[string]interface{}, error) { 17 b, err := golangsdk.BuildRequestBody(opts, "connector") 18 return map[string]interface{}{"os-terminate_connection": b}, err 19 } 20 21 func TerminateConnection(client *golangsdk.ServiceClient, id string, opts TerminateConnectionOpts) (err error) { 22 b, err := golangsdk.BuildRequestBody(opts, "connector") 23 b = map[string]interface{}{"os-terminate_connection": b} 24 if err != nil { 25 return 26 } 27 28 _, err = client.Post(client.ServiceURL("volumes", id, "action"), b, nil, nil) 29 return 30 }