class StandaloneValidator::ValidationResultBuilder
Attributes
validated_object[RW]
Public Instance Methods
add_violation(attribute_name, violation_type_or_message, options = {})
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 13 def add_violation(attribute_name, violation_type_or_message, options = {}) creation_attributes = { :attribute => attribute_name.to_sym, :source_object => validated_object, :options => options, } if violation_type_or_message.kind_of?(Symbol) creation_attributes[:type] = violation_type_or_message else creation_attributes[:message] = violation_type_or_message end push_violation(Violation.new(creation_attributes)) self end
merge_result(result)
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 8 def merge_result(result) combined_results << result self end
result()
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 30 def result ValidationResult.new( :validated_object => validated_object, :violations => all_violations ) end
Private Instance Methods
all_violations()
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 40 def all_violations combined_results.inject(violations) do |violations_list, subresult| violations_list.append(subresult.violations) end end
combined_results()
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 46 def combined_results @combined_results ||= [] end
push_violation(violation)
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 50 def push_violation(violation) @violations = violations.cons(violation) end
violations()
click to toggle source
# File lib/standalone_validator/validation_result_builder.rb, line 54 def violations @violations ||= Hamster.list end