Class: Outbrain::Base

Inherits:
Hash
  • Object
show all
Includes:
Hashie::Extensions::Coercion, Hashie::Extensions::MethodAccess
Defined in:
lib/outbrain/base.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Base

Returns a new instance of Base.



12
13
14
15
16
17
18
# File 'lib/outbrain/base.rb', line 12

def initialize(attributes={})
  attributes.each do |key, value|
    self.send("#{key}=", value)
  end
  @errors = attributes.fetch(:errors, [])
  self
end

Instance Attribute Details

#errorsObject

Returns the value of attribute errors.



10
11
12
# File 'lib/outbrain/base.rb', line 10

def errors
  @errors
end

Instance Method Details

#extract_query_options(options, query_keys) ⇒ Object



28
29
30
# File 'lib/outbrain/base.rb', line 28

def extract_query_options(options, query_keys)
  options.partition{|option, v| query_keys.include?(option) && !v.nil?}
end

#persisted?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/outbrain/base.rb', line 24

def persisted?
  try(:id).present?
end

#valid?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/outbrain/base.rb', line 20

def valid?
  errors.empty?
end