class Sourcing::Person

Public Class Methods

[](values, options = {})
Alias for: find
find(values, options = {}) click to toggle source
# File lib/sourcing/person.rb, line 5
def self.find(values, options = {})
  unless values.is_a?(Hash)
    values = {:id => values}
  end

  options = options.dup
  params  = options.delete(:params) || {}

  if email = values[:email]
    self.new(get(uri(:email, email), params, options))

  elsif twitter = values[:twitter]
    self.new(get(uri(:twitter, twitter), params, options))

  elsif github = values[:github]
    self.new(get(uri(:github, github), params, options))

  elsif name = values[:name]
    self.new(get(uri(:name, URI.escape(name)), params, options))

  elsif id = values[:id]
    self.new(get(id, params, options))

  else
    raise ArgumentError, 'Invalid values'
  end

rescue Nestful::ResourceNotFound
end
Also aliased as: []

Public Instance Methods

create_note!(body) click to toggle source
# File lib/sourcing/person.rb, line 51
def create_note!(body)
  post :notes, body: body
end
favorite!() click to toggle source
# File lib/sourcing/person.rb, line 55
def favorite!
  post :favorite
end
notes() click to toggle source
# File lib/sourcing/person.rb, line 47
def notes
  get :notes
end
tweets() click to toggle source
# File lib/sourcing/person.rb, line 43
def tweets
  get :tweets
end
unfavorite!() click to toggle source
# File lib/sourcing/person.rb, line 59
def unfavorite!
  delete :favorite
end