class Hyrb::Models::Struct

Public Class Methods

define_keys(keys) click to toggle source
# File lib/hyrb/model.rb, line 60
def self.define_keys(keys)
  @keys = keys.each do |key|
    define_method key do
      @data[key]
    end

    define_method "#{key}=" do |val|
      @data[key] = val
    end
  end
end
keys() click to toggle source
# File lib/hyrb/model.rb, line 56
def self.keys
  @keys
end
new(path) click to toggle source
Calls superclass method Hyrb::Model::new
# File lib/hyrb/model.rb, line 72
def initialize(path)
  super
  self.class.keys.each { |key| @data[key] ||= nil }
end

Public Instance Methods

[](key) click to toggle source
# File lib/hyrb/model.rb, line 77
def [](key)
  @data[key]
end
[]=(key, val) click to toggle source
# File lib/hyrb/model.rb, line 81
def []=(key, val)
  @data[key] = val
end

Protected Instance Methods

deserialize(data) click to toggle source
# File lib/hyrb/model.rb, line 91
def deserialize(data)
  Hashie::Mash.new(data)
end
serialize(data) click to toggle source
# File lib/hyrb/model.rb, line 87
def serialize(data)
  data.to_hash
end