virility 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  module Virility
2
2
  class Context
3
3
  include HTTParty
4
- attr_accessor :url, :response, :counts
4
+ attr_accessor :url, :response, :results
5
5
 
6
6
  def initialize url
7
7
  @url = url
@@ -1,6 +1,6 @@
1
1
  module Virility
2
2
  class Excitation
3
- attr_accessor :url, :results, :strategies
3
+ attr_accessor :url, :results, :strategies, :counts
4
4
 
5
5
  #
6
6
  # Initialization
@@ -10,6 +10,7 @@ module Virility
10
10
  @url = encode url
11
11
  @strategies = {}
12
12
  @results = {}
13
+ @counts = {}
13
14
  collect_strategies
14
15
  end
15
16
 
@@ -31,6 +32,21 @@ module Virility
31
32
  def get_response(strategy)
32
33
  @strategies[strategy].response if @strategies[strategy]
33
34
  end
35
+
36
+ #
37
+ # Return Collected Counts as a Hash
38
+ #
39
+
40
+ def counts
41
+ @strategies.each do |name, strategy|
42
+ begin
43
+ @counts[symbolize_for_key(strategy)] = strategy.count.to_i
44
+ rescue => e
45
+ puts "[virility] #{strategy.class.to_s} => #{e}"
46
+ end
47
+ end
48
+ @counts
49
+ end
34
50
 
35
51
  #
36
52
  # Gather all of the Strategies
@@ -3,7 +3,11 @@ module Virility
3
3
 
4
4
  def get_virility
5
5
  @response = self.class.get("http://feeds.delicious.com/v2/json/urlinfo/data?url=#{@url}")
6
- @counts = @response.parsed_response.first
6
+ @results = @response.parsed_response.first
7
+ end
8
+
9
+ def count
10
+ @results["total_posts"] || 0
7
11
  end
8
12
 
9
13
  end
@@ -4,7 +4,11 @@ module Virility
4
4
 
5
5
  def get_virility
6
6
  @response = self.class.get("#{BASE_URL}%22#{@url}%22")
7
- @counts = @response.parsed_response["fql_query_response"]["link_stat"]
7
+ @results = @response.parsed_response["fql_query_response"]["link_stat"]
8
+ end
9
+
10
+ def count
11
+ @results["total_count"] || 0
8
12
  end
9
13
  end
10
14
  end
@@ -9,7 +9,11 @@ module Virility
9
9
 
10
10
  def get_virility
11
11
  @response = self.class.get("http://api.pinterest.com/v1/urls/count.json?url=#{@url}")
12
- @counts = @response.parsed_response
12
+ @results = @response.parsed_response
13
+ end
14
+
15
+ def count
16
+ @results["count"] || 0
13
17
  end
14
18
 
15
19
  end
@@ -10,7 +10,11 @@ module Virility
10
10
 
11
11
  def get_virility
12
12
  @response = self.class.get("https://plusone.google.com/_/+1/fastbutton?url=#{@url}")
13
- @counts = @response.parsed_response
13
+ @results = @response.parsed_response
14
+ end
15
+
16
+ def count
17
+ @results["shares"] || 0
14
18
  end
15
19
 
16
20
  end
@@ -3,13 +3,17 @@ module Virility
3
3
 
4
4
  parser(
5
5
  Proc.new do |body, format|
6
- MultiJson.decode(body)
6
+ MultiJson.decode(body)["result"]
7
7
  end
8
8
  )
9
9
 
10
10
  def get_virility
11
11
  @response = self.class.get("http://www.stumbleupon.com/services/1.01/badge.getinfo?url=#{@url}")
12
- @counts = @response.parsed_response
12
+ @results = @response.parsed_response
13
+ end
14
+
15
+ def count
16
+ @results["views"] || 0
13
17
  end
14
18
 
15
19
  end
@@ -3,7 +3,11 @@ module Virility
3
3
 
4
4
  def get_virility
5
5
  @response = self.class.get("http://urls.api.twitter.com/1/urls/count.json?url=#{@url}")
6
- @counts = @response.parsed_response
6
+ @results = @response.parsed_response
7
+ end
8
+
9
+ def count
10
+ @results["count"] || 0
7
11
  end
8
12
 
9
13
  end
@@ -1,3 +1,3 @@
1
1
  module Virility
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: virility
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -87,7 +87,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
87
87
  version: '0'
88
88
  segments:
89
89
  - 0
90
- hash: 4432019811122804689
90
+ hash: 1510304708477334042
91
91
  required_rubygems_version: !ruby/object:Gem::Requirement
92
92
  none: false
93
93
  requirements:
@@ -96,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
96
96
  version: '0'
97
97
  segments:
98
98
  - 0
99
- hash: 4432019811122804689
99
+ hash: 1510304708477334042
100
100
  requirements: []
101
101
  rubyforge_project:
102
102
  rubygems_version: 1.8.24