class Object

Public Class Methods

yaml_new(klass, tag, val) click to toggle source
# File lib/delayed/serialization/data_mapper.rb, line 6
def self.yaml_new(klass, tag, val)
  begin
    primary_keys = klass.properties.select { |p| p.key? }
    key_names = primary_keys.map { |p| p.name.to_s }
    klass.get!(*key_names.map { |k| val[k] })
  rescue DataMapper::ObjectNotFoundError
    raise Delayed::DeserializationError
  end
end

Public Instance Methods

encode_with(coder) click to toggle source
# File lib/delayed/serialization/data_mapper.rb, line 24
def encode_with(coder)
  coder["attributes"] = attributes.stringify_keys
  coder.tag = ['!ruby/DataMapper', self.class.name].join(':')
end
to_yaml_properties() click to toggle source
# File lib/delayed/serialization/data_mapper.rb, line 16
def to_yaml_properties
  primary_keys = self.class.properties.select { |p| p.key? }
  primary_keys.map { |p| "@#{p.name}" }
end