class Entitize::Repo

Attributes

token[R]

Public Class Methods

new(settings = {}) click to toggle source
# File lib/entitize/repo.rb, line 6
def initialize(settings = {})
  @token = settings[:token]
end

Public Instance Methods

method_missing(query, *args, &block) click to toggle source
# File lib/entitize/repo.rb, line 10
def method_missing(query, *args, &block)
  data_source_class = args[0]
  options           = args[1] || {}
  arguments         = options[:args] || []
  class_name_to_use = options[:entity] || data_source_class.to_s

  # TODO: add in all settings as first args -> e.g. pub_key, secret_key
  arguments.unshift(token) unless token.nil?
  data = data_source_class.send(query, *arguments)

  Entitize::Entity.generate(data, class_name_to_use)
end