1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package detective
4
5import (
6	"context"
7	"fmt"
8	"github.com/aws/aws-sdk-go-v2/service/detective/types"
9	smithy "github.com/aws/smithy-go"
10	"github.com/aws/smithy-go/middleware"
11)
12
13type validateOpAcceptInvitation struct {
14}
15
16func (*validateOpAcceptInvitation) ID() string {
17	return "OperationInputValidation"
18}
19
20func (m *validateOpAcceptInvitation) 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.(*AcceptInvitationInput)
24	if !ok {
25		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
26	}
27	if err := validateOpAcceptInvitationInput(input); err != nil {
28		return out, metadata, err
29	}
30	return next.HandleInitialize(ctx, in)
31}
32
33type validateOpCreateMembers struct {
34}
35
36func (*validateOpCreateMembers) ID() string {
37	return "OperationInputValidation"
38}
39
40func (m *validateOpCreateMembers) 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.(*CreateMembersInput)
44	if !ok {
45		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
46	}
47	if err := validateOpCreateMembersInput(input); err != nil {
48		return out, metadata, err
49	}
50	return next.HandleInitialize(ctx, in)
51}
52
53type validateOpDeleteGraph struct {
54}
55
56func (*validateOpDeleteGraph) ID() string {
57	return "OperationInputValidation"
58}
59
60func (m *validateOpDeleteGraph) 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.(*DeleteGraphInput)
64	if !ok {
65		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
66	}
67	if err := validateOpDeleteGraphInput(input); err != nil {
68		return out, metadata, err
69	}
70	return next.HandleInitialize(ctx, in)
71}
72
73type validateOpDeleteMembers struct {
74}
75
76func (*validateOpDeleteMembers) ID() string {
77	return "OperationInputValidation"
78}
79
80func (m *validateOpDeleteMembers) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
81	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
82) {
83	input, ok := in.Parameters.(*DeleteMembersInput)
84	if !ok {
85		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
86	}
87	if err := validateOpDeleteMembersInput(input); err != nil {
88		return out, metadata, err
89	}
90	return next.HandleInitialize(ctx, in)
91}
92
93type validateOpDisassociateMembership struct {
94}
95
96func (*validateOpDisassociateMembership) ID() string {
97	return "OperationInputValidation"
98}
99
100func (m *validateOpDisassociateMembership) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
101	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
102) {
103	input, ok := in.Parameters.(*DisassociateMembershipInput)
104	if !ok {
105		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
106	}
107	if err := validateOpDisassociateMembershipInput(input); err != nil {
108		return out, metadata, err
109	}
110	return next.HandleInitialize(ctx, in)
111}
112
113type validateOpGetMembers struct {
114}
115
116func (*validateOpGetMembers) ID() string {
117	return "OperationInputValidation"
118}
119
120func (m *validateOpGetMembers) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
121	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
122) {
123	input, ok := in.Parameters.(*GetMembersInput)
124	if !ok {
125		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
126	}
127	if err := validateOpGetMembersInput(input); err != nil {
128		return out, metadata, err
129	}
130	return next.HandleInitialize(ctx, in)
131}
132
133type validateOpListMembers struct {
134}
135
136func (*validateOpListMembers) ID() string {
137	return "OperationInputValidation"
138}
139
140func (m *validateOpListMembers) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
141	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
142) {
143	input, ok := in.Parameters.(*ListMembersInput)
144	if !ok {
145		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
146	}
147	if err := validateOpListMembersInput(input); err != nil {
148		return out, metadata, err
149	}
150	return next.HandleInitialize(ctx, in)
151}
152
153type validateOpRejectInvitation struct {
154}
155
156func (*validateOpRejectInvitation) ID() string {
157	return "OperationInputValidation"
158}
159
160func (m *validateOpRejectInvitation) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
161	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
162) {
163	input, ok := in.Parameters.(*RejectInvitationInput)
164	if !ok {
165		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
166	}
167	if err := validateOpRejectInvitationInput(input); err != nil {
168		return out, metadata, err
169	}
170	return next.HandleInitialize(ctx, in)
171}
172
173type validateOpStartMonitoringMember struct {
174}
175
176func (*validateOpStartMonitoringMember) ID() string {
177	return "OperationInputValidation"
178}
179
180func (m *validateOpStartMonitoringMember) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
181	out middleware.InitializeOutput, metadata middleware.Metadata, err error,
182) {
183	input, ok := in.Parameters.(*StartMonitoringMemberInput)
184	if !ok {
185		return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
186	}
187	if err := validateOpStartMonitoringMemberInput(input); err != nil {
188		return out, metadata, err
189	}
190	return next.HandleInitialize(ctx, in)
191}
192
193func addOpAcceptInvitationValidationMiddleware(stack *middleware.Stack) error {
194	return stack.Initialize.Add(&validateOpAcceptInvitation{}, middleware.After)
195}
196
197func addOpCreateMembersValidationMiddleware(stack *middleware.Stack) error {
198	return stack.Initialize.Add(&validateOpCreateMembers{}, middleware.After)
199}
200
201func addOpDeleteGraphValidationMiddleware(stack *middleware.Stack) error {
202	return stack.Initialize.Add(&validateOpDeleteGraph{}, middleware.After)
203}
204
205func addOpDeleteMembersValidationMiddleware(stack *middleware.Stack) error {
206	return stack.Initialize.Add(&validateOpDeleteMembers{}, middleware.After)
207}
208
209func addOpDisassociateMembershipValidationMiddleware(stack *middleware.Stack) error {
210	return stack.Initialize.Add(&validateOpDisassociateMembership{}, middleware.After)
211}
212
213func addOpGetMembersValidationMiddleware(stack *middleware.Stack) error {
214	return stack.Initialize.Add(&validateOpGetMembers{}, middleware.After)
215}
216
217func addOpListMembersValidationMiddleware(stack *middleware.Stack) error {
218	return stack.Initialize.Add(&validateOpListMembers{}, middleware.After)
219}
220
221func addOpRejectInvitationValidationMiddleware(stack *middleware.Stack) error {
222	return stack.Initialize.Add(&validateOpRejectInvitation{}, middleware.After)
223}
224
225func addOpStartMonitoringMemberValidationMiddleware(stack *middleware.Stack) error {
226	return stack.Initialize.Add(&validateOpStartMonitoringMember{}, middleware.After)
227}
228
229func validateAccount(v *types.Account) error {
230	if v == nil {
231		return nil
232	}
233	invalidParams := smithy.InvalidParamsError{Context: "Account"}
234	if v.AccountId == nil {
235		invalidParams.Add(smithy.NewErrParamRequired("AccountId"))
236	}
237	if v.EmailAddress == nil {
238		invalidParams.Add(smithy.NewErrParamRequired("EmailAddress"))
239	}
240	if invalidParams.Len() > 0 {
241		return invalidParams
242	} else {
243		return nil
244	}
245}
246
247func validateAccountList(v []types.Account) error {
248	if v == nil {
249		return nil
250	}
251	invalidParams := smithy.InvalidParamsError{Context: "AccountList"}
252	for i := range v {
253		if err := validateAccount(&v[i]); err != nil {
254			invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError))
255		}
256	}
257	if invalidParams.Len() > 0 {
258		return invalidParams
259	} else {
260		return nil
261	}
262}
263
264func validateOpAcceptInvitationInput(v *AcceptInvitationInput) error {
265	if v == nil {
266		return nil
267	}
268	invalidParams := smithy.InvalidParamsError{Context: "AcceptInvitationInput"}
269	if v.GraphArn == nil {
270		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
271	}
272	if invalidParams.Len() > 0 {
273		return invalidParams
274	} else {
275		return nil
276	}
277}
278
279func validateOpCreateMembersInput(v *CreateMembersInput) error {
280	if v == nil {
281		return nil
282	}
283	invalidParams := smithy.InvalidParamsError{Context: "CreateMembersInput"}
284	if v.GraphArn == nil {
285		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
286	}
287	if v.Accounts == nil {
288		invalidParams.Add(smithy.NewErrParamRequired("Accounts"))
289	} else if v.Accounts != nil {
290		if err := validateAccountList(v.Accounts); err != nil {
291			invalidParams.AddNested("Accounts", err.(smithy.InvalidParamsError))
292		}
293	}
294	if invalidParams.Len() > 0 {
295		return invalidParams
296	} else {
297		return nil
298	}
299}
300
301func validateOpDeleteGraphInput(v *DeleteGraphInput) error {
302	if v == nil {
303		return nil
304	}
305	invalidParams := smithy.InvalidParamsError{Context: "DeleteGraphInput"}
306	if v.GraphArn == nil {
307		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
308	}
309	if invalidParams.Len() > 0 {
310		return invalidParams
311	} else {
312		return nil
313	}
314}
315
316func validateOpDeleteMembersInput(v *DeleteMembersInput) error {
317	if v == nil {
318		return nil
319	}
320	invalidParams := smithy.InvalidParamsError{Context: "DeleteMembersInput"}
321	if v.GraphArn == nil {
322		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
323	}
324	if v.AccountIds == nil {
325		invalidParams.Add(smithy.NewErrParamRequired("AccountIds"))
326	}
327	if invalidParams.Len() > 0 {
328		return invalidParams
329	} else {
330		return nil
331	}
332}
333
334func validateOpDisassociateMembershipInput(v *DisassociateMembershipInput) error {
335	if v == nil {
336		return nil
337	}
338	invalidParams := smithy.InvalidParamsError{Context: "DisassociateMembershipInput"}
339	if v.GraphArn == nil {
340		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
341	}
342	if invalidParams.Len() > 0 {
343		return invalidParams
344	} else {
345		return nil
346	}
347}
348
349func validateOpGetMembersInput(v *GetMembersInput) error {
350	if v == nil {
351		return nil
352	}
353	invalidParams := smithy.InvalidParamsError{Context: "GetMembersInput"}
354	if v.GraphArn == nil {
355		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
356	}
357	if v.AccountIds == nil {
358		invalidParams.Add(smithy.NewErrParamRequired("AccountIds"))
359	}
360	if invalidParams.Len() > 0 {
361		return invalidParams
362	} else {
363		return nil
364	}
365}
366
367func validateOpListMembersInput(v *ListMembersInput) error {
368	if v == nil {
369		return nil
370	}
371	invalidParams := smithy.InvalidParamsError{Context: "ListMembersInput"}
372	if v.GraphArn == nil {
373		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
374	}
375	if invalidParams.Len() > 0 {
376		return invalidParams
377	} else {
378		return nil
379	}
380}
381
382func validateOpRejectInvitationInput(v *RejectInvitationInput) error {
383	if v == nil {
384		return nil
385	}
386	invalidParams := smithy.InvalidParamsError{Context: "RejectInvitationInput"}
387	if v.GraphArn == nil {
388		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
389	}
390	if invalidParams.Len() > 0 {
391		return invalidParams
392	} else {
393		return nil
394	}
395}
396
397func validateOpStartMonitoringMemberInput(v *StartMonitoringMemberInput) error {
398	if v == nil {
399		return nil
400	}
401	invalidParams := smithy.InvalidParamsError{Context: "StartMonitoringMemberInput"}
402	if v.GraphArn == nil {
403		invalidParams.Add(smithy.NewErrParamRequired("GraphArn"))
404	}
405	if v.AccountId == nil {
406		invalidParams.Add(smithy.NewErrParamRequired("AccountId"))
407	}
408	if invalidParams.Len() > 0 {
409		return invalidParams
410	} else {
411		return nil
412	}
413}
414