Class: Iknow::User

Inherits:
Base
  • Object
show all
Defined in:
lib/iknow/model/user.rb

Defined Under Namespace

Classes: Profile, Study

Constant Summary collapse

ATTRIBUTES =
[:username, :profile]

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

attributes, #attributes, deserialize, #deserialize

Constructor Details

#initialize(params) ⇒ User

Returns a new instance of User.



61
62
63
64
# File 'lib/iknow/model/user.rb', line 61

def initialize(params)
  @profile  = Profile.new(params['profile'])
  @username = params['username']
end

Class Method Details

.find(username) ⇒ Object



50
51
52
53
# File 'lib/iknow/model/user.rb', line 50

def self.find(username)
  response = Iknow::RestClient::User.find(:username => username)
  self.deserialize(response)
end

.matching(keyword, params = {}) ⇒ Object



55
56
57
58
59
# File 'lib/iknow/model/user.rb', line 55

def self.matching(keyword, params = {})
  params[:keyword] = keyword
  response = Iknow::RestClient::User.matching(params)
  self.deserialize(response) || []
end

Instance Method Details

#friends(params = {}) ⇒ Object



76
77
78
79
# File 'lib/iknow/model/user.rb', line 76

def friends(params = {})
  response = Iknow::RestClient::User.friends(params.merge(:username => self.username))
  self.deserialize(response) || []
end

#items(params = {}) ⇒ Object



66
67
68
69
# File 'lib/iknow/model/user.rb', line 66

def items(params = {})
  response = Iknow::RestClient::User.items(params.merge(:username => self.username))
  self.deserialize(response, :as => Iknow::Item) || []
end

#lists(params = {}) ⇒ Object



71
72
73
74
# File 'lib/iknow/model/user.rb', line 71

def lists(params = {})
  response = Iknow::RestClient::User.lists(params.merge(:username => self.username))
  self.deserialize(response, :as => Iknow::List) || []
end

#study(params = {}) ⇒ Object



81
82
83
84
85
# File 'lib/iknow/model/user.rb', line 81

def study(params = {})
  params[:application] ||= 'iknow'
  response = Iknow::RestClient::User.study_results(params.merge(:username => self.username))
  self.deserialize(response, :as => Iknow::User::Study)
end