fireeagle 0.7.1.0 → 0.8.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,7 @@
1
+ == 0.8.0.0
2
+
3
+ * Update recent method
4
+
1
5
  == 0.7.1.0
2
6
 
3
7
  * Fix OAuth Dependency Issue
@@ -114,7 +114,7 @@ class FireEagle
114
114
  "#{FireEagle::MOBILE_AUTH_URL}#{@app_id}"
115
115
  end
116
116
 
117
- # The URL the user must access to authorize this token. request_token must be called first. For use by web-based and desktop-based applications.
117
+ # The URL the user must access to authorize this token. get_request_token must be called first. For use by web-based and desktop-based applications.
118
118
  def authorization_url
119
119
  raise FireEagle::ArgumentError, "call #get_request_token first" if @request_token.nil?
120
120
  request_token.authorize_url
@@ -203,10 +203,10 @@ class FireEagle
203
203
  #
204
204
  # == Optional parameters:
205
205
  #
206
- # <tt>count</tt> Number of users to return per page. (default: 10)
207
- # <tt>start</tt> The page number at which to start returning the list of users. Pages are 0-indexed, each page contains the per_page number of users. (default: 0)
208
206
  # <tt>time</tt> The time to start looking at recent updates from. Value is flexible, supported forms are 'now', 'yesterday', '12:00', '13:00', '1:00pm' and '2008-03-12 12:34:56'. (default: 'now')
209
- def recent(count = 10, start = 0, time = 'now')
207
+ # <tt>count</tt> Number of users to return per page. (default: 10)
208
+ # <tt>start</tt> The page number at which to start returning the list of users.
209
+ def recent(time = 'now', count = 10, start = 1)
210
210
  raise FireEagle::ArgumentError, "OAuth Access Token Required" unless @access_token
211
211
  params = { :count => count, :start => start, :time => time }
212
212
  response = get(FireEagle::RECENT_API_PATH + ".#{format}", :params => params)
@@ -233,7 +233,7 @@ class FireEagle
233
233
  # * <tt>upcoming_venue_id</tt>
234
234
  # * <tt>yahoo_local_id</tt>
235
235
  # * <tt>plazes_id</tt>
236
- def within(location = {}, count = 10, start = 0)
236
+ def within(location = {}, count = 10, start = 1)
237
237
  raise FireEagle::ArgumentError, "OAuth Access Token Required" unless @access_token
238
238
  location = sanitize_location_hash(location)
239
239
  params = { :count => count, :start => start }.merge(location)
@@ -1,6 +1,5 @@
1
1
  class FireEagle
2
2
  class User
3
-
4
3
  #Parses the XML response from FireEagle.
5
4
  def initialize(doc)
6
5
  doc = Hpricot(doc) unless doc.is_a?(Hpricot::Doc || Hpricot::Elem)
@@ -12,6 +11,11 @@ class FireEagle
12
11
  @token ||= @doc.at("/user").attributes["token"] rescue nil
13
12
  end
14
13
 
14
+ #The time at which this user was last located
15
+ def located_at
16
+ @located_at ||= Time.parse(@doc.at("/user").attributes["located-at"]) rescue nil
17
+ end
18
+
15
19
  #FireEagle's "best guess" form this User's Location. This best guess is derived as the most accurate
16
20
  #level of the hierarchy with a timestamp in the last half an hour <b>or</b> as the most accurate
17
21
  #level of the hierarchy with the most recent timestamp.
@@ -1,8 +1,8 @@
1
1
  class FireEagle #:nodoc:
2
2
  module VERSION #:nodoc:
3
3
  MAJOR = 0
4
- MINOR = 7
5
- TINY = 1
4
+ MINOR = 8
5
+ TINY = 0
6
6
  TEENY = 0
7
7
 
8
8
  STRING = [MAJOR, MINOR, TINY, TEENY].join('.')
@@ -179,11 +179,11 @@ describe "FireEagle" do
179
179
  end
180
180
 
181
181
  it "should return an array of Users" do
182
- @client.recent(2, 1, 'yesterday').should have(2).users
182
+ @client.recent('yesterday', 3, 1).should have(3).users
183
183
  end
184
184
 
185
- it "should return an array of Locations for each" do
186
- @client.recent(2, 1, 'yesterday').first.should have(5).locations
185
+ it "should have an 'located_at' timestamp for each user" do
186
+ @client.recent('yesterday', 3, 1).first.located_at.should == Time.parse('2008-07-31T22:31:37+12:00')
187
187
  end
188
188
  end
189
189
 
@@ -5,6 +5,7 @@ rescue LoadError
5
5
  gem 'rspec'
6
6
  require 'spec'
7
7
  end
8
+ require 'time'
8
9
 
9
10
  XML_ERROR_RESPONSE = <<-RESPONSE
10
11
  <?xml version="1.0" encoding="utf-8"?>
@@ -254,104 +255,11 @@ RESPONSE
254
255
 
255
256
  XML_RECENT_RESPONSE = <<-RESPONSE
256
257
  <?xml version="1.0" encoding="UTF-8"?>
257
- <rsp stat="ok" xmlns:georss="http://www.georss.org/georss">
258
+ <rsp xmlns:georss="http://www.georss.org/georss" stat="ok">
258
259
  <users>
259
- <user token="MQdDrJgXMNJi">
260
- <location-hierarchy>
261
- <location best-guess="true">
262
- <id>111541</id>
263
- <georss:point>32.7093315125 -117.1650772095</georss:point>
264
- <level>0</level>
265
- <level-name>exact</level-name>
266
- <located-at>2008-03-03T09:05:16-08:00</located-at>
267
- <name>333 W Harbor Dr, San Diego, CA</name>
268
- </location>
269
- <location best-guess="false">
270
- <id>111551</id>
271
- <georss:box>32.6916618347 -117.2174377441 32.744140625 -117.1458892822</georss:box>
272
- <level>1</level>
273
- <level-name>postal</level-name>
274
- <located-at>2008-03-03T09:05:16-08:00</located-at>
275
- <name>San Diego, CA 92101</name>
276
- <place-id>NpiXqwmYA5viX3K3Ew</place-id>
277
- <woeid>12796255</woeid>
278
- </location>
279
- <location best-guess="false">
280
- <id>111561</id>
281
- <georss:box>32.5349388123 -117.2884292603 33.1128082275 -116.9142913818</georss:box>
282
- <level>3</level>
283
- <level-name>city</level-name>
284
- <located-at>2008-03-03T09:05:16-08:00</located-at>
285
- <name>San Diego, CA</name>
286
- <place-id>Nm4O.DebBZTYKUsu</place-id>
287
- <woeid>2487889</woeid>
288
- </location>
289
- <location best-guess="false">
290
- <id>111571</id>
291
- <georss:box>32.5342788696 -124.4150238037 42.0093803406 -114.1308135986</georss:box>
292
- <level>5</level>
293
- <level-name>state</level-name>
294
- <located-at>2008-03-03T09:05:16-08:00</located-at>
295
- <name>California</name>
296
- <place-id>SVrAMtCbAphCLAtP</place-id>
297
- <woeid>2347563</woeid>
298
- </location>
299
- <location best-guess="false">
300
- <id>111581</id>
301
- <georss:box>18.9108390808 -167.2764129639 72.8960571289 -66.6879425049</georss:box>
302
- <level>6</level>
303
- <level-name>country</level-name>
304
- <located-at>2008-03-03T09:05:16-08:00</located-at>
305
- <name>United States</name>
306
- <place-id>4KO02SibApitvSBieQ</place-id>
307
- <woeid>23424977</woeid>
308
- </location>
309
- </location-hierarchy>
310
- </user>
311
- <user token="XMoZaTjZJiOQ">
312
- <location-hierarchy>
313
- <location best-guess="true">
314
- <id>113221</id>
315
- <georss:box>32.8155899048 -96.8162918091 32.8511695862 -96.7717132568</georss:box>
316
- <level>1</level>
317
- <level-name>postal</level-name>
318
- <located-at>2008-03-03T10:24:24-08:00</located-at>
319
- <name>Dallas, TX 75205</name>
320
- <place-id>1KTPxFCYA5vlcics6A</place-id>
321
- <woeid>12790441</woeid>
322
- </location>
323
- <location best-guess="false">
324
- <id>113231</id>
325
- <georss:box>32.6209487915 -96.9988708496 33.0258712769 -96.4660263062</georss:box>
326
- <level>3</level>
327
- <level-name>city</level-name>
328
- <located-at>2008-03-03T10:24:24-08:00</located-at>
329
- <name>Dallas, TX</name>
330
- <place-id>bgWooz.bApRFBRNK</place-id>
331
- <woeid>2388929</woeid>
332
- </location>
333
- <location best-guess="false">
334
- <id>113241</id>
335
- <georss:box>25.8372898102 -106.645652771 36.5006904602 -93.5079269409</georss:box>
336
- <level>5</level>
337
- <level-name>state</level-name>
338
- <located-at>2008-03-03T10:24:24-08:00</located-at>
339
- <name>Texas</name>
340
- <place-id>b1Yi6qubApjz6jWW</place-id>
341
- <woeid>2347602</woeid>
342
- </location>
343
- <location best-guess="false">
344
- <id>113251</id>
345
- <georss:box>18.9108390808 -167.2764129639 72.8960571289 -66.6879425049</georss:box>
346
- <level>6</level>
347
- <level-name>country</level-name>
348
- <located-at>2008-03-03T10:24:24-08:00</located-at>
349
- <name>United States</name>
350
- <place-id>4KO02SibApitvSBieQ</place-id>
351
- <woeid>23424977</woeid>
352
- </location>
353
- </location-hierarchy>
354
- </user>
260
+ <user located-at="2008-07-31T22:31:37+12:00" token="5pyl1xip0uh6"/>
261
+ <user located-at="2008-07-31T21:49:03+12:00" token="i71yc3myixg3"/>
262
+ <user located-at="2008-07-30T21:40:54+12:00" token="q1jm8nubnpsi"/>
355
263
  </users>
356
264
  </rsp>
357
265
  RESPONSE
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fireeagle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1.0
4
+ version: 0.8.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jesse Newland
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-05-02 00:00:00 -04:00
12
+ date: 2008-08-12 00:00:00 -04:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: oauth
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,6 +24,7 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: hpricot
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
@@ -32,6 +34,7 @@ dependencies:
32
34
  version:
33
35
  - !ruby/object:Gem::Dependency
34
36
  name: GeoRuby
37
+ type: :runtime
35
38
  version_requirement:
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
@@ -39,6 +42,16 @@ dependencies:
39
42
  - !ruby/object:Gem::Version
40
43
  version: 1.3.2
41
44
  version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: hoe
47
+ type: :development
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.7.0
54
+ version:
42
55
  description: Ruby wrapper for Yahoo!'s FireEagle
43
56
  email:
44
57
  - jnewland@gmail.com
@@ -96,7 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
96
109
  requirements: []
97
110
 
98
111
  rubyforge_project: fireeagle
99
- rubygems_version: 1.1.1
112
+ rubygems_version: 1.2.0
100
113
  signing_key:
101
114
  specification_version: 2
102
115
  summary: Ruby wrapper for Yahoo!'s FireEagle