-
Notifications
You must be signed in to change notification settings - Fork 83
/
formation_constraint_validation.go
23 lines (20 loc) · 1.37 KB
/
formation_constraint_validation.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package graphql
import (
validation "github.com/go-ozzo/ozzo-validation/v4"
)
// Validate validates FormationConstraintInput
func (i FormationConstraintInput) Validate() error {
if err := validation.ValidateStruct(&i,
validation.Field(&i.Name, validation.Required),
validation.Field(&i.ConstraintType, validation.Required, validation.In(ConstraintTypePre, ConstraintTypePost, ConstraintTypeUI)),
validation.Field(&i.TargetOperation, validation.Required, validation.In(TargetOperationAssignFormation, TargetOperationUnassignFormation, TargetOperationCreateFormation, TargetOperationDeleteFormation, TargetOperationGenerateFormationAssignmentNotification, TargetOperationGenerateFormationNotification, TargetOperationLoadFormations, TargetOperationSelectSystemsForFormation, TargetOperationSendNotification, TargetOperationNotificationStatusReturned)),
validation.Field(&i.Operator, validation.Required),
validation.Field(&i.ResourceType, validation.Required, validation.In(ResourceTypeApplication, ResourceTypeRuntime, ResourceTypeFormation, ResourceTypeTenant, ResourceTypeRuntimeContext)),
validation.Field(&i.ResourceSubtype, validation.Required),
validation.Field(&i.InputTemplate, validation.Required),
validation.Field(&i.ConstraintScope, validation.Required, validation.In(ConstraintScopeFormationType, ConstraintScopeGlobal)),
); err != nil {
return err
}
return nil
}