module Nilavu::MegamAttributes

Constants

ATTRIBUTES
KEY
VALUE

Public Class Methods

new(control_data = {}) click to toggle source
# File lib/megam/mixins/megam_attributes.rb, line 13
def initialize(control_data = {})
    set_attributes(control_data)
end

Public Instance Methods

attributes() click to toggle source
# File lib/megam/mixins/megam_attributes.rb, line 9
def attributes
    NotImplementedError
end
set_attributes(control_data) click to toggle source
# File lib/megam/mixins/megam_attributes.rb, line 17
def set_attributes(control_data)
    attributes.each { |a| instance_variable_set("@#{a}", control_data[a]) unless control_data[a].nil? }
end
to_hash() click to toggle source
# File lib/megam/mixins/megam_attributes.rb, line 21
def to_hash
    h = attributes.reduce([]) do |res, key|
        val = instance_variable_get("@#{key}".to_sym)
        res << { KEY => key.to_s, VALUE => val } unless val.nil?
        res
    end
    h
end