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