[v9.3.x] CloudWatch: fix custom namespace for listing dimension keys, refactor to non-pointer types, add test assertions, rename packages (#59130)

CloudWatch: fix custom namespace for listing dimension keys, refactor to non-pointer types, add test assertions, rename packages (#59106)

Co-authored-by: Erik Sundell <erik.sundell87@gmail.com>
(cherry picked from commit c43e1a721f)

Co-authored-by: Shirley <4163034+fridgepoet@users.noreply.github.com>
This commit is contained in:
Grot (@grafanabot)
2022-11-22 16:25:27 +01:00
committed by GitHub
co-authored by Shirley
parent 3a1ffd88d5
commit f3ffc1a495
32 changed files with 194 additions and 160 deletions
@@ -0,0 +1,37 @@
package resources
import (
"net/url"
)
type DimensionValuesRequest struct {
*ResourceRequest
Namespace string
MetricName string
DimensionKey string
DimensionFilter []*Dimension
}
func GetDimensionValuesRequest(parameters url.Values) (DimensionValuesRequest, error) {
resourceRequest, err := getResourceRequest(parameters)
if err != nil {
return DimensionValuesRequest{}, err
}
request := DimensionValuesRequest{
ResourceRequest: resourceRequest,
Namespace: parameters.Get("namespace"),
MetricName: parameters.Get("metricName"),
DimensionKey: parameters.Get("dimensionKey"),
DimensionFilter: []*Dimension{},
}
dimensions, err := parseDimensionFilter(parameters.Get("dimensionFilters"))
if err != nil {
return DimensionValuesRequest{}, err
}
request.DimensionFilter = dimensions
return request, nil
}