lib/golden_fleece/value.rb in golden_fleece-0.1.2 vs lib/golden_fleece/value.rb in golden_fleece-0.1.3
- old
+ new
@@ -5,36 +5,25 @@
class Value
include Utility
def initialize(schema)
@schema = schema
- self.value_initialized = false
end
def compute(record)
@record = record
+ @value = Hana::Pointer.new(schema.json_path).eval(record.read_attribute(schema.attribute))
- if dirty?
- @value = Hana::Pointer.new(schema.json_path).eval(record.read_attribute(schema.attribute))
+ cast_booleans
+ apply_normalizers
+ apply_default
- cast_booleans
- apply_normalizers
- apply_default
-
- self.value_initialized = true
- end
-
value
end
private
- attr_accessor :value_initialized
attr_reader :schema, :record, :value
-
- def dirty?
- record.send("#{schema.attribute}_changed?") || !value_initialized
- end
# Cast boolean values the way that Rails normally does on boolean columns
def cast_booleans
if schema.types.include? Definitions::TYPES[:boolean]
@value = cast_boolean(value)