Documentation
¶
Index ¶
- type UnifiedValidator
- func (v *UnifiedValidator) SanitizeInput(input string) string
- func (v *UnifiedValidator) ValidateCurrency(currency string) *ValidationResult
- func (v *UnifiedValidator) ValidateEmail(email string) *ValidationResult
- func (v *UnifiedValidator) ValidateName(name string) *ValidationResult
- func (v *UnifiedValidator) ValidatePassword(password string) *ValidationResult
- func (v *UnifiedValidator) ValidateSport(sport string) *ValidationResult
- func (v *UnifiedValidator) ValidateString(value, fieldName string, rules ...string) *ValidationResult
- func (v *UnifiedValidator) ValidateStruct(s interface{}) *ValidationResult
- func (v *UnifiedValidator) ValidateUUID(uuid, fieldName string) *ValidationResult
- type ValidationConfig
- type ValidationError
- type ValidationResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type UnifiedValidator ¶
type UnifiedValidator struct {
// contains filtered or unexported fields
}
UnifiedValidator validador unificado para todos los servicios
func NewUnifiedValidator ¶
func NewUnifiedValidator(config *ValidationConfig, logger *logrus.Entry) *UnifiedValidator
NewUnifiedValidator creates a new unified validator instance
func (*UnifiedValidator) SanitizeInput ¶
func (v *UnifiedValidator) SanitizeInput(input string) string
SanitizeInput sanitizes input by removing/escaping dangerous characters
func (*UnifiedValidator) ValidateCurrency ¶
func (v *UnifiedValidator) ValidateCurrency(currency string) *ValidationResult
ValidateCurrency validates a currency code
func (*UnifiedValidator) ValidateEmail ¶
func (v *UnifiedValidator) ValidateEmail(email string) *ValidationResult
ValidateEmail validates an email address
func (*UnifiedValidator) ValidateName ¶
func (v *UnifiedValidator) ValidateName(name string) *ValidationResult
ValidateName validates a name field
func (*UnifiedValidator) ValidatePassword ¶
func (v *UnifiedValidator) ValidatePassword(password string) *ValidationResult
ValidatePassword validates a password
func (*UnifiedValidator) ValidateSport ¶
func (v *UnifiedValidator) ValidateSport(sport string) *ValidationResult
ValidateSport validates a sport name
func (*UnifiedValidator) ValidateString ¶
func (v *UnifiedValidator) ValidateString(value, fieldName string, rules ...string) *ValidationResult
ValidateString validates a string value
func (*UnifiedValidator) ValidateStruct ¶
func (v *UnifiedValidator) ValidateStruct(s interface{}) *ValidationResult
ValidateStruct validates a complete struct
func (*UnifiedValidator) ValidateUUID ¶
func (v *UnifiedValidator) ValidateUUID(uuid, fieldName string) *ValidationResult
ValidateUUID validates a UUID string
type ValidationConfig ¶
type ValidationConfig struct {
// String limits
MaxStringLength int
MaxEmailLength int
MaxNameLength int
MaxPasswordLength int
MinPasswordLength int
MaxDescriptionLength int
// Security settings
EnableXSSProtection bool
EnableSQLInjection bool
EnableScriptCheck bool
EnablePathTraversal bool
// File validation
AllowedFileTypes []string
MaxFileSize int64
MaxFileNameLength int
// Business rules
AllowedSports []string
AllowedCurrencies []string
AllowedCountries []string
// Advanced settings
EnableUnicodeNormalization bool
StrictMode bool
EnableCustomValidators bool
}
ValidationConfig configuración del validador
func DefaultValidationConfig ¶
func DefaultValidationConfig() *ValidationConfig
DefaultValidationConfig returns default validation configuration
type ValidationError ¶
type ValidationError struct {
Field string `json:"field"`
Message string `json:"message"`
Code string `json:"code"`
Value string `json:"value"`
Severity string `json:"severity"`
}
ValidationError represents a single validation error
type ValidationResult ¶
type ValidationResult struct {
IsValid bool `json:"is_valid"`
Errors []ValidationError `json:"errors,omitempty"`
Value interface{} `json:"value,omitempty"`
Field string `json:"field,omitempty"`
}
ValidationResult represents the result of a validation operation