github.com/gophercloud/gophercloud@v1.11.0/openstack/messaging/v2/messages/urls.go (about) 1 package messages 2 3 import ( 4 "net/url" 5 6 "github.com/gophercloud/gophercloud" 7 ) 8 9 const ( 10 apiVersion = "v2" 11 apiName = "queues" 12 ) 13 14 func createURL(client *gophercloud.ServiceClient, queueName string) string { 15 return client.ServiceURL(apiVersion, apiName, queueName, "messages") 16 } 17 18 func listURL(client *gophercloud.ServiceClient, queueName string) string { 19 return client.ServiceURL(apiVersion, apiName, queueName, "messages") 20 } 21 22 func getURL(client *gophercloud.ServiceClient, queueName string) string { 23 return client.ServiceURL(apiVersion, apiName, queueName, "messages") 24 } 25 26 func deleteURL(client *gophercloud.ServiceClient, queueName string) string { 27 return client.ServiceURL(apiVersion, apiName, queueName, "messages") 28 } 29 30 func DeleteMessageURL(client *gophercloud.ServiceClient, queueName string, messageID string) string { 31 return client.ServiceURL(apiVersion, apiName, queueName, "messages", messageID) 32 } 33 34 func messageURL(client *gophercloud.ServiceClient, queueName string, messageID string) string { 35 return client.ServiceURL(apiVersion, apiName, queueName, "messages", messageID) 36 } 37 38 // Builds next page full url based on current url. 39 func nextPageURL(currentURL string, next string) (string, error) { 40 base, err := url.Parse(currentURL) 41 if err != nil { 42 return "", err 43 } 44 rel, err := url.Parse(next) 45 if err != nil { 46 return "", err 47 } 48 return base.ResolveReference(rel).String(), nil 49 }