v1.3.0
This commit is contained in:
@@ -2,6 +2,43 @@ package validators
|
||||
|
||||
import "github.com/go-playground/validator/v10"
|
||||
|
||||
// protoValidator is used to validate Proto fields.
|
||||
func protoValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, protoValues)
|
||||
}
|
||||
|
||||
// accessTypeValidator is used to validate AccessType fields.
|
||||
func accessTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, accessTypeValues)
|
||||
}
|
||||
|
||||
// resTypesValidator is used to validate ResTypes fields.
|
||||
func resTypesValidator(fe validator.FieldLevel) bool {
|
||||
fieldSlice, ok := fe.Field().Interface().([]string)
|
||||
if !ok {
|
||||
return false
|
||||
}
|
||||
|
||||
for _, value := range fieldSlice {
|
||||
if !StringInSlice(value, resTypesValues) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
// driverValidator is used to validate Driver fields.
|
||||
func driverValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, driverValues)
|
||||
}
|
||||
|
||||
// accountCUTypeValidator is used to validate CUType field.
|
||||
func accountCUTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
@@ -9,20 +46,6 @@ func accountCUTypeValidator(fe validator.FieldLevel) bool {
|
||||
return StringInSlice(fieldValue, accountCUTypeValues)
|
||||
}
|
||||
|
||||
// accountAccessTypeValidator is used to validate AccessType field.
|
||||
func accountAccessTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, accountAccessTypeValues)
|
||||
}
|
||||
|
||||
// bserviceDriverValidator is used to validate Driver field.
|
||||
func bserviceDriverValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, bserviceDriverValues)
|
||||
}
|
||||
|
||||
// bserviceModeValidator is used to validate Mode field.
|
||||
func bserviceModeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
@@ -65,11 +88,76 @@ func computeNetTypeValidator(fe validator.FieldLevel) bool {
|
||||
return StringInSlice(fieldValue, computeNetTypeValues)
|
||||
}
|
||||
|
||||
// computeProtoValidator is used to validate Proto field.
|
||||
func computeProtoValidator(fe validator.FieldLevel) bool {
|
||||
// computeOrderValidator is used to validate Order field.
|
||||
func computeOrderValidator(fe validator.FieldLevel) bool {
|
||||
fieldSlice, ok := fe.Field().Interface().([]string)
|
||||
if !ok {
|
||||
return false
|
||||
}
|
||||
|
||||
for _, value := range fieldSlice {
|
||||
if !StringInSlice(value, computeOrderValues) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
// computeDataDisksValidator is used to validate DataDisks field.
|
||||
func computeDataDisksValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, computeProtoValues)
|
||||
return StringInSlice(fieldValue, computeDataDisksValues)
|
||||
}
|
||||
|
||||
// diskTypeValidator is used to validate Type field.
|
||||
func diskTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, diskTypeValues)
|
||||
}
|
||||
|
||||
// flipgroupClientTypeValidator is used to validate ClientType field.
|
||||
func flipgroupClientTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, flipgroupClientTypeValues)
|
||||
}
|
||||
|
||||
// kvmNetTypeValidator is used to validate NetType field.
|
||||
func kvmNetTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, kvmNetTypeValues)
|
||||
}
|
||||
|
||||
// lbAlgorithmValidator is used to validate Algorithm field.
|
||||
func lbAlgorithmValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, lbAlgorithmValues)
|
||||
}
|
||||
|
||||
// rgDefNetValidator is used to validate DefNet field.
|
||||
func rgDefNetValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, rgDefNetValues)
|
||||
}
|
||||
|
||||
// rgNetTypeValidator is used to validate NetType field.
|
||||
func rgNetTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, rgNetTypeValues)
|
||||
}
|
||||
|
||||
// vinsTypeValidator is used to validate Type field.
|
||||
func vinsTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, vinsTypeValues)
|
||||
}
|
||||
|
||||
// imageBootTypeValidator is used to validate BootType field.
|
||||
@@ -108,3 +196,10 @@ func imageArchitectureValidator(fe validator.FieldLevel) bool {
|
||||
|
||||
return StringInSlice(fieldValue, imageArchitectureValues)
|
||||
}
|
||||
|
||||
// sepFieldTypeValidator is used to validate FieldType field.
|
||||
func sepFieldTypeValidator(fe validator.FieldLevel) bool {
|
||||
fieldValue := fe.Field().String()
|
||||
|
||||
return StringInSlice(fieldValue, sepFieldTypeValues)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user