// Code generated by smithy-go-codegen DO NOT EDIT. package iotsecuretunneling import ( "context" "fmt" "github.com/aws/aws-sdk-go-v2/service/iotsecuretunneling/types" smithy "github.com/aws/smithy-go" "github.com/aws/smithy-go/middleware" ) type validateOpCloseTunnel struct { } func (*validateOpCloseTunnel) ID() string { return "OperationInputValidation" } func (m *validateOpCloseTunnel) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*CloseTunnelInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpCloseTunnelInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpDescribeTunnel struct { } func (*validateOpDescribeTunnel) ID() string { return "OperationInputValidation" } func (m *validateOpDescribeTunnel) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*DescribeTunnelInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpDescribeTunnelInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpListTagsForResource struct { } func (*validateOpListTagsForResource) ID() string { return "OperationInputValidation" } func (m *validateOpListTagsForResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*ListTagsForResourceInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpListTagsForResourceInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpOpenTunnel struct { } func (*validateOpOpenTunnel) ID() string { return "OperationInputValidation" } func (m *validateOpOpenTunnel) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*OpenTunnelInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpOpenTunnelInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpRotateTunnelAccessToken struct { } func (*validateOpRotateTunnelAccessToken) ID() string { return "OperationInputValidation" } func (m *validateOpRotateTunnelAccessToken) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*RotateTunnelAccessTokenInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpRotateTunnelAccessTokenInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpTagResource struct { } func (*validateOpTagResource) ID() string { return "OperationInputValidation" } func (m *validateOpTagResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*TagResourceInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpTagResourceInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } type validateOpUntagResource struct { } func (*validateOpUntagResource) ID() string { return "OperationInputValidation" } func (m *validateOpUntagResource) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { input, ok := in.Parameters.(*UntagResourceInput) if !ok { return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters) } if err := validateOpUntagResourceInput(input); err != nil { return out, metadata, err } return next.HandleInitialize(ctx, in) } func addOpCloseTunnelValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpCloseTunnel{}, middleware.After) } func addOpDescribeTunnelValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpDescribeTunnel{}, middleware.After) } func addOpListTagsForResourceValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpListTagsForResource{}, middleware.After) } func addOpOpenTunnelValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpOpenTunnel{}, middleware.After) } func addOpRotateTunnelAccessTokenValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpRotateTunnelAccessToken{}, middleware.After) } func addOpTagResourceValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpTagResource{}, middleware.After) } func addOpUntagResourceValidationMiddleware(stack *middleware.Stack) error { return stack.Initialize.Add(&validateOpUntagResource{}, middleware.After) } func validateDestinationConfig(v *types.DestinationConfig) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "DestinationConfig"} if v.Services == nil { invalidParams.Add(smithy.NewErrParamRequired("Services")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateTag(v *types.Tag) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "Tag"} if v.Key == nil { invalidParams.Add(smithy.NewErrParamRequired("Key")) } if v.Value == nil { invalidParams.Add(smithy.NewErrParamRequired("Value")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateTagList(v []types.Tag) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "TagList"} for i := range v { if err := validateTag(&v[i]); err != nil { invalidParams.AddNested(fmt.Sprintf("[%d]", i), err.(smithy.InvalidParamsError)) } } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpCloseTunnelInput(v *CloseTunnelInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "CloseTunnelInput"} if v.TunnelId == nil { invalidParams.Add(smithy.NewErrParamRequired("TunnelId")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpDescribeTunnelInput(v *DescribeTunnelInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "DescribeTunnelInput"} if v.TunnelId == nil { invalidParams.Add(smithy.NewErrParamRequired("TunnelId")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpListTagsForResourceInput(v *ListTagsForResourceInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "ListTagsForResourceInput"} if v.ResourceArn == nil { invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpOpenTunnelInput(v *OpenTunnelInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "OpenTunnelInput"} if v.Tags != nil { if err := validateTagList(v.Tags); err != nil { invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError)) } } if v.DestinationConfig != nil { if err := validateDestinationConfig(v.DestinationConfig); err != nil { invalidParams.AddNested("DestinationConfig", err.(smithy.InvalidParamsError)) } } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpRotateTunnelAccessTokenInput(v *RotateTunnelAccessTokenInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "RotateTunnelAccessTokenInput"} if v.TunnelId == nil { invalidParams.Add(smithy.NewErrParamRequired("TunnelId")) } if len(v.ClientMode) == 0 { invalidParams.Add(smithy.NewErrParamRequired("ClientMode")) } if v.DestinationConfig != nil { if err := validateDestinationConfig(v.DestinationConfig); err != nil { invalidParams.AddNested("DestinationConfig", err.(smithy.InvalidParamsError)) } } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpTagResourceInput(v *TagResourceInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "TagResourceInput"} if v.ResourceArn == nil { invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) } if v.Tags == nil { invalidParams.Add(smithy.NewErrParamRequired("Tags")) } else if v.Tags != nil { if err := validateTagList(v.Tags); err != nil { invalidParams.AddNested("Tags", err.(smithy.InvalidParamsError)) } } if invalidParams.Len() > 0 { return invalidParams } else { return nil } } func validateOpUntagResourceInput(v *UntagResourceInput) error { if v == nil { return nil } invalidParams := smithy.InvalidParamsError{Context: "UntagResourceInput"} if v.ResourceArn == nil { invalidParams.Add(smithy.NewErrParamRequired("ResourceArn")) } if v.TagKeys == nil { invalidParams.Add(smithy.NewErrParamRequired("TagKeys")) } if invalidParams.Len() > 0 { return invalidParams } else { return nil } }