Class: Uniword::Validation::Validators::FileStructureValidator
- Inherits:
-
LayerValidator
- Object
- LayerValidator
- Uniword::Validation::Validators::FileStructureValidator
- Defined in:
- lib/uniword/validation/validators/file_structure_validator.rb
Overview
Validates file structure (existence, readability, extension, size).
Responsibility: Validate file-level properties. Single Responsibility: Only validates file structure.
This is Layer 1 validation - the most basic check that must pass before any other validation can occur.
Checks:
-
File exists
-
File is readable
-
File extension is appropriate
-
File size is reasonable
Instance Attribute Summary
Attributes inherited from LayerValidator
Instance Method Summary collapse
Methods inherited from LayerValidator
Constructor Details
This class inherits a constructor from Uniword::Validation::LayerValidator
Instance Method Details
#layer_name ⇒ Object
27 28 29 |
# File 'lib/uniword/validation/validators/file_structure_validator.rb', line 27 def layer_name "File Structure" end |
#validate(path) ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/uniword/validation/validators/file_structure_validator.rb', line 31 def validate(path) result = LayerValidationResult.new(layer_name) # Check file exists unless File.exist?(path) return result.add_error("File does not exist", critical: true) end # Check readable unless File.readable?(path) return result.add_error("File is not readable", critical: true) end # Check extension validate_extension(path, result) if check_extension? # Check file size validate_size(path, result) if check_size? result end |