func()

in extra/aws-sdk-go/service/dlm/api.go [3640:3707]


func (s *Schedule) Validate() error {
	invalidParams := request.ErrInvalidParams{Context: "Schedule"}
	if s.ArchiveRule != nil {
		if err := s.ArchiveRule.Validate(); err != nil {
			invalidParams.AddNested("ArchiveRule", err.(request.ErrInvalidParams))
		}
	}
	if s.CreateRule != nil {
		if err := s.CreateRule.Validate(); err != nil {
			invalidParams.AddNested("CreateRule", err.(request.ErrInvalidParams))
		}
	}
	if s.CrossRegionCopyRules != nil {
		for i, v := range s.CrossRegionCopyRules {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CrossRegionCopyRules", i), err.(request.ErrInvalidParams))
			}
		}
	}
	if s.DeprecateRule != nil {
		if err := s.DeprecateRule.Validate(); err != nil {
			invalidParams.AddNested("DeprecateRule", err.(request.ErrInvalidParams))
		}
	}
	if s.FastRestoreRule != nil {
		if err := s.FastRestoreRule.Validate(); err != nil {
			invalidParams.AddNested("FastRestoreRule", err.(request.ErrInvalidParams))
		}
	}
	if s.ShareRules != nil {
		for i, v := range s.ShareRules {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ShareRules", i), err.(request.ErrInvalidParams))
			}
		}
	}
	if s.TagsToAdd != nil {
		for i, v := range s.TagsToAdd {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TagsToAdd", i), err.(request.ErrInvalidParams))
			}
		}
	}
	if s.VariableTags != nil {
		for i, v := range s.VariableTags {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "VariableTags", i), err.(request.ErrInvalidParams))
			}
		}
	}

	if invalidParams.Len() > 0 {
		return invalidParams
	}
	return nil
}