Sha256: 7fe348a91e02e61a974c368ea41b7203f927ceae79a6576907f3bb2f2399ac59

Contents?: true

Size: 734 Bytes

Versions: 3

Compression:

Stored size: 734 Bytes

Contents

# -*- encoding: utf-8 -*-

require 'data_mapper/validation/rule'

module DataMapper
  module Validation
    class Rule

      class PrimitiveType < Rule

        def valid?(resource)
          property = get_resource_property(resource, attribute_name)
          value    = resource.validation_property_value(attribute_name)

          value.nil? || property.value_loaded?(value)
        end

        def violation_type(resource)
          :primitive
        end

        def violation_data(resource)
          property = get_resource_property(resource, attribute_name)

          [ [ :primitive, property.load_as ] ]
        end

      end # class PrimitiveType

    end # class Rule
  end # module Validation
end # module DataMapper

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
sbf-dm-validations-1.4.0 lib/data_mapper/validation/rule/primitive_type.rb
sbf-dm-validations-1.3.0 lib/data_mapper/validation/rule/primitive_type.rb
sbf-dm-validations-1.3.0.beta lib/data_mapper/validation/rule/primitive_type.rb