+10
-10
app/post_downloader.rb
+10
-10
app/post_downloader.rb
···
17
17
18
18
def import_from_queue(queue)
19
19
loop do
20
-
likes = queue.pop_batch
20
+
items = queue.pop_batch
21
21
22
-
if likes.empty?
22
+
if items.empty?
23
23
if @stop_when_empty
24
24
return
25
25
else
···
31
31
@report&.update(queue: { length: queue.length })
32
32
33
33
begin
34
-
response = @sky.get_request('app.bsky.feed.getPosts', { uris: likes.map(&:post_uri) })
34
+
response = @sky.get_request('app.bsky.feed.getPosts', { uris: items.map(&:post_uri) })
35
35
36
36
response['posts'].each do |data|
37
37
begin
38
-
like = likes.detect { |x| x.post_uri == data['uri'] }
39
-
likes.delete(like)
38
+
item = items.detect { |x| x.post_uri == data['uri'] }
39
+
items.delete(item)
40
40
41
41
post = save_post(data['uri'], data['record'])
42
-
update_like(like, post)
42
+
update_item(item, post)
43
43
rescue StandardError => e
44
-
puts "Error in PostDownloader: #{like.post_uri}: #{e}"
44
+
puts "Error in PostDownloader: #{item.post_uri}: #{e}"
45
45
end
46
46
end
47
47
rescue StandardError => e
···
67
67
)
68
68
end
69
69
70
-
def update_like(like, post)
71
-
like.update!(post: post, post_uri: nil)
70
+
def update_item(item, post)
71
+
item.update!(post: post, post_uri: nil)
72
72
73
73
@total_count += 1
74
-
@oldest_imported = [@oldest_imported, like.time].min
74
+
@oldest_imported = [@oldest_imported, item.time].min
75
75
76
76
@report&.update(downloader: { downloaded_posts: @total_count, oldest_date: @oldest_imported })
77
77
end