oven-exporter/response_lists.go

45 lines
1.0 KiB
Go
Raw Normal View History

2021-07-20 12:18:00 +02:00
package main
import (
"fmt"
)
const (
2021-07-20 12:25:05 +02:00
URLRequestListVHost = "/v1/vhosts"
URLRequestListApp = "/v1/vhosts/%s/apps"
2021-07-20 12:18:00 +02:00
URLRequestListStream = "/v1/vhosts/%s/apps/%s/streams"
)
type ResponseList struct {
2021-07-20 12:25:05 +02:00
Message string `json:"message"`
StatusCode int `json:"statusCode"`
Data []string `json:"response,omitempty"`
2021-07-20 12:18:00 +02:00
}
func (c *configData) RequestListVHosts() (*ResponseList, error) {
req := ResponseList{}
url := fmt.Sprintf(URLRequestListVHost)
2021-07-20 12:25:05 +02:00
if err := c.Request(url, &req); err != nil {
2021-07-20 12:18:00 +02:00
return nil, err
}
return &req, nil
}
func (c *configData) RequestListApps(vhost string) (*ResponseList, error) {
req := ResponseList{}
url := fmt.Sprintf(URLRequestListApp, vhost)
2021-07-20 12:25:05 +02:00
if err := c.Request(url, &req); err != nil {
2021-07-20 12:18:00 +02:00
return nil, err
}
return &req, nil
}
func (c *configData) RequestListStreams(vhost, app string) (*ResponseList, error) {
req := ResponseList{}
url := fmt.Sprintf(URLRequestListStream, vhost, app)
2021-07-20 12:25:05 +02:00
if err := c.Request(url, &req); err != nil {
2021-07-20 12:18:00 +02:00
return nil, err
}
return &req, nil
}