rolesanywhere/validators.go (47 lines of code) (raw):
// Code generated by smithy-go-codegen DO NOT EDIT.
package rolesanywhere
import (
"context"
"fmt"
smithy "github.com/aws/smithy-go"
"github.com/aws/smithy-go/middleware"
)
type validateOpCreateSession struct {
}
func (*validateOpCreateSession) ID() string {
return "OperationInputValidation"
}
func (m *validateOpCreateSession) HandleInitialize(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) (
out middleware.InitializeOutput, metadata middleware.Metadata, err error,
) {
input, ok := in.Parameters.(*CreateSessionInput)
if !ok {
return out, metadata, fmt.Errorf("unknown input parameters type %T", in.Parameters)
}
if err := validateOpCreateSessionInput(input); err != nil {
return out, metadata, err
}
return next.HandleInitialize(ctx, in)
}
func addOpCreateSessionValidationMiddleware(stack *middleware.Stack) error {
return stack.Initialize.Add(&validateOpCreateSession{}, middleware.After)
}
func validateOpCreateSessionInput(v *CreateSessionInput) error {
if v == nil {
return nil
}
invalidParams := smithy.InvalidParamsError{Context: "CreateSessionInput"}
if v.ProfileArn == nil {
invalidParams.Add(smithy.NewErrParamRequired("ProfileArn"))
}
if v.RoleArn == nil {
invalidParams.Add(smithy.NewErrParamRequired("RoleArn"))
}
if v.TrustAnchorArn == nil {
invalidParams.Add(smithy.NewErrParamRequired("TrustAnchorArn"))
}
if invalidParams.Len() > 0 {
return invalidParams
} else {
return nil
}
}