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