class Interage::Request::Builder

Attributes

created_at[RW]
id[RW]
updated_at[RW]

Public Class Methods

new(attributes = {}) click to toggle source
Calls superclass method
# File lib/interage/request/builder.rb, line 10
def initialize(attributes = {})
  mount_errors(attributes.delete(:errors))

  super(assigned_attributes(attributes))
end

Public Instance Methods

persisted?() click to toggle source
# File lib/interage/request/builder.rb, line 16
def persisted?
  id.present?
end

Protected Instance Methods

assigned_attributes(attributes) click to toggle source
# File lib/interage/request/builder.rb, line 22
def assigned_attributes(attributes)
  attributes.select { |attr_name, _| respond_to?(attr_name) }
end
mount_errors(attr_errors) click to toggle source
# File lib/interage/request/builder.rb, line 26
def mount_errors(attr_errors)
  return if attr_errors.blank?

  attr_errors.each do |attr_name, errors|
    Array.wrap(errors).each { |error| self.errors.add(attr_name, error) }
  end
end