module Troo::ModelHelpers::ClassMethods

Public Instance Methods

by_external_id(id) click to toggle source

@param [String] @return [Ohm::Model]

# File lib/troo/helpers/model_helpers.rb, line 38
def by_external_id(id)
  first(external_id: id)
end
count(criteria = {}) click to toggle source

@param [Hash] @return [Integer]

# File lib/troo/helpers/model_helpers.rb, line 31
def count(criteria = {})
  return all.count if criteria.empty?
  find(criteria).size
end
default() click to toggle source

@return [Ohm::Model]

# File lib/troo/helpers/model_helpers.rb, line 20
def default
  first(default: true)
end
default?() click to toggle source

@return [TrueClass, FalseClass]

# File lib/troo/helpers/model_helpers.rb, line 25
def default?
  !!(default)
end
first(criteria = {}) click to toggle source

@param [Hash] @return [Ohm::Model]

# File lib/troo/helpers/model_helpers.rb, line 6
def first(criteria = {})
  return all.first if criteria.nil? || criteria.empty?
  find(criteria).first
end
retrieve(id = nil, options = {}) click to toggle source

@param [String, NilClass] @param [Hash] @return [Ohm::Model]

# File lib/troo/helpers/model_helpers.rb, line 45
def retrieve(id = nil, options = {})
  Troo::Retrieval::Local.retrieve(self, id, options)
end
update(criteria = {}) click to toggle source

@param [Hash] @return [TrueClass]

# File lib/troo/helpers/model_helpers.rb, line 13
def update(criteria = {})
  return false if criteria.nil? || criteria.empty?
  all.map { |record| record.update(criteria) }
  true
end