buzz_feed 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +7 -0
- data/lib/buzz_feed/client.rb +6 -6
- data/lib/buzz_feed/version.rb +1 -1
- data/lib/buzz_feed.rb +1 -1
- data/lib/generators/templates/initializer.rb +5 -4
- data/lib/tasks/buzz_feed.rake +13 -0
- metadata +4 -3
data/README.rdoc
CHANGED
data/lib/buzz_feed/client.rb
CHANGED
@@ -10,19 +10,19 @@ module BuzzFeed
|
|
10
10
|
end
|
11
11
|
|
12
12
|
# Returns data of a service.
|
13
|
-
def self.read(
|
14
|
-
read_blogspot(BuzzFeed.config['service'][
|
13
|
+
def self.read(service_name)
|
14
|
+
read_blogspot(BuzzFeed.config['service'][service_name]['url'])
|
15
15
|
end
|
16
16
|
|
17
17
|
# Updates the Buzz model with fresh links from the service.
|
18
|
-
def self.update(
|
19
|
-
fresh_data = self.read(
|
18
|
+
def self.update(service_name)
|
19
|
+
fresh_data = self.read(service_name)
|
20
20
|
fresh_ids = fresh_data.map{|b| b[:id]}
|
21
|
-
old_ids = Buzz.select('service_item_id').where('service_name=?',
|
21
|
+
old_ids = Buzz.select('service_item_id').where('service_name=?', service_name).where('service_item_id in (?)', fresh_ids).all.map(&:service_item_id)
|
22
22
|
new_ids = fresh_data.map{|b| b[:id]} - old_ids
|
23
23
|
|
24
24
|
fresh_data.each do |buzz|
|
25
|
-
Buzz.create(:title => buzz[:title], :service_name =>
|
25
|
+
Buzz.create(:title => buzz[:title], :service_name => service_name, :service_item_id => buzz[:id], :url => buzz[:url],
|
26
26
|
:created_at => buzz[:created_at]) unless new_ids.rindex(buzz[:id]).nil?
|
27
27
|
end
|
28
28
|
true
|
data/lib/buzz_feed/version.rb
CHANGED
data/lib/buzz_feed.rb
CHANGED
@@ -9,11 +9,12 @@ if !defined?(Rake) && !defined?(IRB) && Rails.env.to_s != 'development'
|
|
9
9
|
Rufus::Scheduler.start_new.every '12h', :first_in => '60s', :blocking => true do |job|
|
10
10
|
Rails.logger.info "[Rufus][#{Time.now}] BuzzFeed worker started."
|
11
11
|
|
12
|
-
|
13
|
-
BuzzFeed::Client.
|
12
|
+
begin
|
13
|
+
BuzzFeed::Client.update_all
|
14
|
+
Rails.logger.info "[Rufus][#{Time.now}] BuzzFeed worker finished."
|
15
|
+
rescue
|
16
|
+
Rails.logger.info "[Rufus][#{Time.now}] BuzzFeed worker failed."
|
14
17
|
end
|
15
|
-
|
16
|
-
Rails.logger.info "[Rufus][#{Time.now}] BuzzFeed worker finished."
|
17
18
|
end
|
18
19
|
|
19
20
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
namespace :buzz_feed do
|
2
|
+
|
3
|
+
desc "Updates the Buzz model with fresh links from the service."
|
4
|
+
task :update, [:service_name] => :environment do |t, args|
|
5
|
+
BuzzFeed::Client.update(args.service_name)
|
6
|
+
end
|
7
|
+
|
8
|
+
desc "Updates the Buzz model with fresh links from all available services."
|
9
|
+
task :update_all => :environment do
|
10
|
+
BuzzFeed::Client.update_all
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: buzz_feed
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 31
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 2
|
10
|
+
version: 0.1.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kristijan Sedlak
|
@@ -69,6 +69,7 @@ files:
|
|
69
69
|
- lib/generators/templates/initializer.rb
|
70
70
|
- lib/generators/templates/migration.rb
|
71
71
|
- lib/initializers/worker.rb
|
72
|
+
- lib/tasks/buzz_feed.rake
|
72
73
|
- test/buzz_feed_test.rb
|
73
74
|
- test/test_helper.rb
|
74
75
|
- README.rdoc
|