twitter_oauth 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/twitter_oauth/user.rb +48 -3
  2. metadata +22 -2
@@ -2,14 +2,59 @@ module TwitterOAuth
2
2
  class Client
3
3
 
4
4
  # Returns the 100 last friends
5
+ # The page parameter is implemented for legacy reasons, but use of this is slow
6
+ # as passing page is no longer supported by the Twitter API as the use of cursors
7
+ # is now obligitory. It is recommended that you use all_friends instead
5
8
  def friends(page=1)
6
- get("/statuses/friends.json?page=#{page}")
9
+ return get("/statuses/friends.json?page=#{page}") if page == 1
10
+ users = []
11
+ cursor = "-1"
12
+ page.times do
13
+ return [] if cursor == 0
14
+ json = get("/statuses/friends.json?cursor=#{cursor}")
15
+ cursor = json["next_cursor"]
16
+ users = json["users"]
17
+ end
18
+ users
7
19
  end
20
+
21
+ # Returns all pages of friends
22
+ def all_friends
23
+ users = []
24
+ cursor = "-1"
25
+ while cursor != 0 do
26
+ json = get("/statuses/friends.json?cursor=#{cursor}")
27
+ cursor = json["next_cursor"]
28
+ users += json["users"]
29
+ end
30
+ users
31
+ end
8
32
 
9
33
  # Returns the 100 last followers
10
34
  def followers(page=1)
11
- get("/statuses/followers.json?page=#{page}")
35
+ return get("/statuses/followers.json?page=#{page}") if page == 1
36
+ users = []
37
+ cursor = "-1"
38
+ page.times do
39
+ return [] if cursor == 0
40
+ json = get("/statuses/followers.json?cursor=#{cursor}")
41
+ cursor = json["next_cursor"]
42
+ users = json["users"]
43
+ end
44
+ users
45
+ end
46
+
47
+ # Returns all pages of followers
48
+ def all_followers
49
+ users = []
50
+ cursor = "-1"
51
+ while cursor != 0 do
52
+ json = get("/statuses/followers.json?cursor=#{cursor}")
53
+ cursor = json["next_cursor"]
54
+ users += json["users"]
55
+ end
56
+ users
12
57
  end
13
-
58
+
14
59
  end
15
60
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: twitter_oauth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Taylor
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-12-30 00:00:00 +00:00
12
+ date: 2010-02-22 00:00:00 +00:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -42,6 +42,26 @@ dependencies:
42
42
  - !ruby/object:Gem::Version
43
43
  version: "1.16"
44
44
  version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: shoulda
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "0"
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: mocha
57
+ type: :development
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: "0"
64
+ version:
45
65
  description: twitter_oauth is a Ruby library for talking to twitter using the new oauth method.
46
66
  email: moomerman@gmail.com
47
67
  executables: []