module MtkFramework::ActiveInteractionConcerns::UpdatableObject

Public Instance Methods

from_object(object) click to toggle source
# File lib/mtk_framework/active_interaction_concerns/updatable_object.rb, line 19
def from_object(object)
  params = filters.keys.reduce({}) do |acc, filter|
    if object.respond_to? filter
      acc.merge!(filter => object.send(filter))
    else
      acc
    end
  end
  new(object.class.name.downcase => object, **params)
end
update_object_from_filters(object, **options) click to toggle source
# File lib/mtk_framework/active_interaction_concerns/updatable_object.rb, line 8
def update_object_from_filters(object, **options)
  filters = self.class.filters.except(*options[:except])

  filters.each_key do |filter_name|
    if !send(filter_name).nil? && object.respond_to?("#{filter_name}=")
      object.send("#{filter_name}=", send(filter_name))
    end
  end
end