func()

in service/emrserverless/api.go [2566:2641]


func (s *CreateApplicationInput) Validate() error {
	invalidParams := request.ErrInvalidParams{Context: "CreateApplicationInput"}
	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
	}
	if s.Name != nil && len(*s.Name) < 1 {
		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
	}
	if s.ReleaseLabel == nil {
		invalidParams.Add(request.NewErrParamRequired("ReleaseLabel"))
	}
	if s.ReleaseLabel != nil && len(*s.ReleaseLabel) < 1 {
		invalidParams.Add(request.NewErrParamMinLen("ReleaseLabel", 1))
	}
	if s.Type == nil {
		invalidParams.Add(request.NewErrParamRequired("Type"))
	}
	if s.Type != nil && len(*s.Type) < 1 {
		invalidParams.Add(request.NewErrParamMinLen("Type", 1))
	}
	if s.AutoStopConfiguration != nil {
		if err := s.AutoStopConfiguration.Validate(); err != nil {
			invalidParams.AddNested("AutoStopConfiguration", err.(request.ErrInvalidParams))
		}
	}
	if s.ImageConfiguration != nil {
		if err := s.ImageConfiguration.Validate(); err != nil {
			invalidParams.AddNested("ImageConfiguration", err.(request.ErrInvalidParams))
		}
	}
	if s.InitialCapacity != nil {
		for i, v := range s.InitialCapacity {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InitialCapacity", i), err.(request.ErrInvalidParams))
			}
		}
	}
	if s.MaximumCapacity != nil {
		if err := s.MaximumCapacity.Validate(); err != nil {
			invalidParams.AddNested("MaximumCapacity", err.(request.ErrInvalidParams))
		}
	}
	if s.MonitoringConfiguration != nil {
		if err := s.MonitoringConfiguration.Validate(); err != nil {
			invalidParams.AddNested("MonitoringConfiguration", err.(request.ErrInvalidParams))
		}
	}
	if s.RuntimeConfiguration != nil {
		for i, v := range s.RuntimeConfiguration {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RuntimeConfiguration", i), err.(request.ErrInvalidParams))
			}
		}
	}
	if s.WorkerTypeSpecifications != nil {
		for i, v := range s.WorkerTypeSpecifications {
			if v == nil {
				continue
			}
			if err := v.Validate(); err != nil {
				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "WorkerTypeSpecifications", i), err.(request.ErrInvalidParams))
			}
		}
	}

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