lib/pra/app.rb in pra-0.1.1 vs lib/pra/app.rb in pra-1.0.0
- old
+ new
@@ -1,9 +1,10 @@
require 'thread'
require 'pra/window_system_factory'
require 'pra/pull_request_service'
+require 'pra/error_log'
Thread.abort_on_exception=true
module Pra
class App
@@ -20,11 +21,24 @@
Thread.new { pull_request_fetcher_thread }
end
def fetch_and_refresh_pull_requests
@window_system.fetching_pull_requests
- pull_requests = Pra::PullRequestService.fetch_pull_requests
- @window_system.refresh_pull_requests(pull_requests)
+ new_pull_requests = []
+
+ Pra::PullRequestService.fetch_pull_requests do |fetch|
+ fetch.on_success do |pull_requests|
+ new_pull_requests += pull_requests
+ end
+
+ fetch.on_error do |error|
+ Pra::ErrorLog.log(error)
+ @window_system.fetch_failed
+ end
+ end
+
+ @window_system.refresh_pull_requests(new_pull_requests)
+
Kernel.sleep(5 * 60)
end
def pull_request_fetcher_thread
while( true ) do