1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package pi 4 5import ( 6 "context" 7 "fmt" 8 "github.com/aws/aws-sdk-go-v2/service/pi/types" 9 smithy "github.com/aws/smithy-go" 10 "github.com/aws/smithy-go/middleware" 11) 12 13type validateOpDescribeDimensionKeys struct { 14} 15 16func (*validateOpDescribeDimensionKeys) ID() string { 17 return "OperationInputValidation" 18} 19 20func (m *validateOpDescribeDimensionKeys) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( 21 out middleware.InitializeOutput, metadata middleware.Metadata, err error, 22) { 23 input, ok := in.Parameters.(*DescribeDimensionKeysInput) 24 if !ok { 25 return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) 26 } 27 if err := validateOpDescribeDimensionKeysInput(input); err != nil { 28 return out, metadata, err 29 } 30 return next.HandleInitialize(ctx, in) 31} 32 33type validateOpGetDimensionKeyDetails struct { 34} 35 36func (*validateOpGetDimensionKeyDetails) ID() string { 37 return "OperationInputValidation" 38} 39 40func (m *validateOpGetDimensionKeyDetails) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( 41 out middleware.InitializeOutput, metadata middleware.Metadata, err error, 42) { 43 input, ok := in.Parameters.(*GetDimensionKeyDetailsInput) 44 if !ok { 45 return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) 46 } 47 if err := validateOpGetDimensionKeyDetailsInput(input); err != nil { 48 return out, metadata, err 49 } 50 return next.HandleInitialize(ctx, in) 51} 52 53type validateOpGetResourceMetrics struct { 54} 55 56func (*validateOpGetResourceMetrics) ID() string { 57 return "OperationInputValidation" 58} 59 60func (m *validateOpGetResourceMetrics) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( 61 out middleware.InitializeOutput, metadata middleware.Metadata, err error, 62) { 63 input, ok := in.Parameters.(*GetResourceMetricsInput) 64 if !ok { 65 return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) 66 } 67 if err := validateOpGetResourceMetricsInput(input); err != nil { 68 return out, metadata, err 69 } 70 return next.HandleInitialize(ctx, in) 71} 72 73func addOpDescribeDimensionKeysValidationMiddleware(stack *middleware.Stack) error { 74 return stack.Initialize.Add(&validateOpDescribeDimensionKeys{}, middleware.After) 75} 76 77func addOpGetDimensionKeyDetailsValidationMiddleware(stack *middleware.Stack) error { 78 return stack.Initialize.Add(&validateOpGetDimensionKeyDetails{}, middleware.After) 79} 80 81func addOpGetResourceMetricsValidationMiddleware(stack *middleware.Stack) error { 82 return stack.Initialize.Add(&validateOpGetResourceMetrics{}, middleware.After) 83} 84 85func validateDimensionGroup(v *types.DimensionGroup) error { 86 if v == nil { 87 return nil 88 } 89 invalidParams := smithy.InvalidParamsError{Context: "DimensionGroup"} 90 if v.Group == nil { 91 invalidParams.Add(smithy.NewErrParamRequired("Group")) 92 } 93 if invalidParams.Len() > 0 { 94 return invalidParams 95 } else { 96 return nil 97 } 98} 99 100func validateMetricQuery(v *types.MetricQuery) error { 101 if v == nil { 102 return nil 103 } 104 invalidParams := smithy.InvalidParamsError{Context: "MetricQuery"} 105 if v.Metric == nil { 106 invalidParams.Add(smithy.NewErrParamRequired("Metric")) 107 } 108 if v.GroupBy != nil { 109 if err := validateDimensionGroup(v.GroupBy); err != nil { 110 invalidParams.AddNested("GroupBy", err.(smithy.InvalidParamsError)) 111 } 112 } 113 if invalidParams.Len() > 0 { 114 return invalidParams 115 } else { 116 return nil 117 } 118} 119 120func validateMetricQueryList(v []types.MetricQuery) error { 121 if v == nil { 122 return nil 123 } 124 invalidParams := smithy.InvalidParamsError{Context: "MetricQueryList"} 125 for i := range v { 126 if err := validateMetricQuery(&v[i]); err != nil { 127 invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) 128 } 129 } 130 if invalidParams.Len() > 0 { 131 return invalidParams 132 } else { 133 return nil 134 } 135} 136 137func validateOpDescribeDimensionKeysInput(v *DescribeDimensionKeysInput) error { 138 if v == nil { 139 return nil 140 } 141 invalidParams := smithy.InvalidParamsError{Context: "DescribeDimensionKeysInput"} 142 if len(v.ServiceType) == 0 { 143 invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) 144 } 145 if v.Identifier == nil { 146 invalidParams.Add(smithy.NewErrParamRequired("Identifier")) 147 } 148 if v.StartTime == nil { 149 invalidParams.Add(smithy.NewErrParamRequired("StartTime")) 150 } 151 if v.EndTime == nil { 152 invalidParams.Add(smithy.NewErrParamRequired("EndTime")) 153 } 154 if v.Metric == nil { 155 invalidParams.Add(smithy.NewErrParamRequired("Metric")) 156 } 157 if v.GroupBy == nil { 158 invalidParams.Add(smithy.NewErrParamRequired("GroupBy")) 159 } else if v.GroupBy != nil { 160 if err := validateDimensionGroup(v.GroupBy); err != nil { 161 invalidParams.AddNested("GroupBy", err.(smithy.InvalidParamsError)) 162 } 163 } 164 if v.PartitionBy != nil { 165 if err := validateDimensionGroup(v.PartitionBy); err != nil { 166 invalidParams.AddNested("PartitionBy", err.(smithy.InvalidParamsError)) 167 } 168 } 169 if invalidParams.Len() > 0 { 170 return invalidParams 171 } else { 172 return nil 173 } 174} 175 176func validateOpGetDimensionKeyDetailsInput(v *GetDimensionKeyDetailsInput) error { 177 if v == nil { 178 return nil 179 } 180 invalidParams := smithy.InvalidParamsError{Context: "GetDimensionKeyDetailsInput"} 181 if len(v.ServiceType) == 0 { 182 invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) 183 } 184 if v.Identifier == nil { 185 invalidParams.Add(smithy.NewErrParamRequired("Identifier")) 186 } 187 if v.Group == nil { 188 invalidParams.Add(smithy.NewErrParamRequired("Group")) 189 } 190 if v.GroupIdentifier == nil { 191 invalidParams.Add(smithy.NewErrParamRequired("GroupIdentifier")) 192 } 193 if invalidParams.Len() > 0 { 194 return invalidParams 195 } else { 196 return nil 197 } 198} 199 200func validateOpGetResourceMetricsInput(v *GetResourceMetricsInput) error { 201 if v == nil { 202 return nil 203 } 204 invalidParams := smithy.InvalidParamsError{Context: "GetResourceMetricsInput"} 205 if len(v.ServiceType) == 0 { 206 invalidParams.Add(smithy.NewErrParamRequired("ServiceType")) 207 } 208 if v.Identifier == nil { 209 invalidParams.Add(smithy.NewErrParamRequired("Identifier")) 210 } 211 if v.MetricQueries == nil { 212 invalidParams.Add(smithy.NewErrParamRequired("MetricQueries")) 213 } else if v.MetricQueries != nil { 214 if err := validateMetricQueryList(v.MetricQueries); err != nil { 215 invalidParams.AddNested("MetricQueries", err.(smithy.InvalidParamsError)) 216 } 217 } 218 if v.StartTime == nil { 219 invalidParams.Add(smithy.NewErrParamRequired("StartTime")) 220 } 221 if v.EndTime == nil { 222 invalidParams.Add(smithy.NewErrParamRequired("EndTime")) 223 } 224 if invalidParams.Len() > 0 { 225 return invalidParams 226 } else { 227 return nil 228 } 229} 230