in internal/repo/pricing.go [93:112]
func getDirectoryCost(location Location, sizeStandard, sizeNearline, sizeColdline, sizeArchive int64) (float64, error) {
var totalCost float64 = 0
costMap, ok := locationPricing[location]
if !ok {
return 0, errors.New("invalid location")
}
classes := []StorageClass{StorageStandard, StorageNearline, StorageColdline, StorageArchive}
sizes := []int64{sizeStandard, sizeNearline, sizeColdline, sizeArchive}
for i, size := range sizes {
cost, err := getPrice(costMap, classes[i], size)
if err != nil {
return 0, err
}
totalCost += cost
}
return totalCost, nil
}