MCPcopy Create free account
hub / github.com/OverloadBlitz/cloudcent-cli / MakeCacheKey

Function MakeCacheKey

internal/db/db.go:217–233  ·  view source on GitHub ↗

MakeCacheKey produces a deterministic cache key from query parameters.

(providers, regions, categories, productFamilies []string, attrs map[string]string, prices []string)

Source from the content-addressed store, hash-verified

215
216// MakeCacheKey produces a deterministic cache key from query parameters.
217func MakeCacheKey(providers, regions, categories, productFamilies []string, attrs map[string]string, prices []string) string {
218 parts := []string{
219 strings.Join(providers, ","),
220 strings.Join(regions, ","),
221 strings.Join(categories, ","),
222 strings.Join(productFamilies, ","),
223 }
224 attrParts := make([]string, 0, len(attrs))
225 for k, v := range attrs {
226 attrParts = append(attrParts, k+"="+v)
227 }
228 sort.Strings(attrParts)
229 parts = append(parts, strings.Join(attrParts, "&"))
230 parts = append(parts, strings.Join(prices, ","))
231 sort.Strings(parts)
232 return strings.Join(parts, "|")
233}

Callers 1

UpdateMethod · 0.92

Calls

no outgoing calls

Tested by

no test coverage detected