hnrb 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 00a5c3041835c8c2606075b08cce72975f95d4ad
4
- data.tar.gz: 45e2a8f625ab7a39952834c520634da09faa5919
3
+ metadata.gz: b6f880cd0771dcaa30f0a92a324ce1fbbf9c3ddb
4
+ data.tar.gz: 8b72623af10876a8a06823f7d97321e036817073
5
5
  SHA512:
6
- metadata.gz: 067f9ddf3a50ab269db3b42b235660ca74abc3f58e221d3939151b63426e9bd8682578d25b1d9445d888ff3a359b49d7011f541b25f00ea4b4d8807483ddffd4
7
- data.tar.gz: d28abad30432342517a175710986dacf45abdb30bf7eb70dedf3f9da87d74089e7fb7cbfcef52ce9969d96fc100a996d1b8560594748b37ad6961b6910080d83
6
+ metadata.gz: 59469a46f6dcb667c221ad674fa2e8d82b33fcc72c3e12d4a1abe67dc04bf45710bb3cb1a8d8348de26e9af65a297d8997024ef94436f5a4b53256de63c396c4
7
+ data.tar.gz: c8f363d8878d877fdbbfcaec4440572b0b76a3c67e6fd82cef4f75d585b37e1ecafb837927552ff92c07be7f0da57b5f121c8befa313db9908d72a26c54cd0b4
data/lib/hnrb.rb CHANGED
@@ -1,6 +1,9 @@
1
1
  require 'json'
2
2
  require 'net/http'
3
3
 
4
+ require 'hnrb/user'
5
+ require 'hnrb/item'
6
+
4
7
  class HNrb
5
8
 
6
9
  BASE_URL = "https://hacker-news.firebaseio.com/v0/"
@@ -23,11 +26,11 @@ class HNrb
23
26
  end
24
27
 
25
28
  def get_item(item_id)
26
- send_get_request_to BASE_URL + "item/#{item_id}.json"
29
+ Item.new(send_get_request_to BASE_URL + "item/#{item_id}.json")
27
30
  end
28
31
 
29
32
  def get_user(username)
30
- send_get_request_to BASE_URL + "user/#{username}.json"
33
+ User.new(send_get_request_to BASE_URL + "user/#{username}.json")
31
34
  end
32
35
 
33
36
  def get_top_stories
data/lib/hnrb/item.rb ADDED
@@ -0,0 +1,14 @@
1
+ class Item
2
+
3
+ PROPERTIES = [:id, :deleted, :type, :by, :time, :text, :dead, :parent, :kids, :url, :score, :title, :parts]
4
+ PROPERTIES.each do |p|
5
+ attr_accessor p
6
+ end
7
+
8
+ def initialize(attributes = {})
9
+ attributes.each do |k, v|
10
+ self.send("#{k.to_sym}=", v) if PROPERTIES.member? k.to_sym
11
+ end
12
+ end
13
+
14
+ end
data/lib/hnrb/user.rb ADDED
@@ -0,0 +1,14 @@
1
+ class User
2
+
3
+ PROPERTIES = [:id, :delay, :created, :karma, :about, :submitted]
4
+ PROPERTIES.each do |p|
5
+ attr_accessor p
6
+ end
7
+
8
+ def initialize(attributes = {})
9
+ attributes.each do |k, v|
10
+ self.send("#{k.to_sym}=", v) if PROPERTIES.member? k.to_sym
11
+ end
12
+ end
13
+
14
+ end
@@ -0,0 +1,3 @@
1
+ module HNrb
2
+ VERSION = "0.0.2"
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hnrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jingwen Chen
@@ -18,6 +18,9 @@ extensions: []
18
18
  extra_rdoc_files: []
19
19
  files:
20
20
  - lib/hnrb.rb
21
+ - lib/hnrb/item.rb
22
+ - lib/hnrb/user.rb
23
+ - lib/hnrb/version.rb
21
24
  homepage: http://rubygems.org/gems/hnrb
22
25
  licenses:
23
26
  - MIT