{"action":"created","comment":{"url":"https://api.github.com/repos/triplea-game/triplea/pulls/comments/50072570","id":50072570,"diff_hunk":"@@ -52,26 +59,45 @@ public void setError(final String error) {\n \n   @Override\n   public void run() {","path":"src/games/strategy/engine/framework/mapDownload/DownloadRunnable.java","position":22,"original_position":22,"commit_id":"2d4127c83c0194de114e1194f031781a3e0ad2cc","original_commit_id":"2d4127c83c0194de114e1194f031781a3e0ad2cc","user":{"login":"DanVanAtta","id":12397753,"avatar_url":"https://avatars.githubusercontent.com/u/12397753?v=3","gravatar_id":"","url":"https://api.github.com/users/DanVanAtta","html_url":"https://github.com/DanVanAtta","followers_url":"https://api.github.com/users/DanVanAtta/followers","following_url":"https://api.github.com/users/DanVanAtta/following{/other_user}","gists_url":"https://api.github.com/users/DanVanAtta/gists{/gist_id}","starred_url":"https://api.github.com/users/DanVanAtta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanVanAtta/subscriptions","organizations_url":"https://api.github.com/users/DanVanAtta/orgs","repos_url":"https://api.github.com/users/DanVanAtta/repos","events_url":"https://api.github.com/users/DanVanAtta/events{/privacy}","received_events_url":"https://api.github.com/users/DanVanAtta/received_events","type":"User","site_admin":false},"body":"New fork in functionality here allows us to read triplea_maps.xml from local file or downloading from net. Breaks the design of DownloadRunnable a bit, but in terms of making a focused/non-invasive change, this was a compromise to avoid changing things around in a much more radical way.","created_at":"2016-01-19T04:51:39Z","updated_at":"2016-01-19T04:51:39Z","html_url":"https://github.com/triplea-game/triplea/pull/286#discussion_r50072570","pull_request_url":"https://api.github.com/repos/triplea-game/triplea/pulls/286","_links":{"self":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/comments/50072570"},"html":{"href":"https://github.com/triplea-game/triplea/pull/286#discussion_r50072570"},"pull_request":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/286"}}},"pull_request":{"url":"https://api.github.com/repos/triplea-game/triplea/pulls/286","id":52648750,"html_url":"https://github.com/triplea-game/triplea/pull/286","diff_url":"https://github.com/triplea-game/triplea/pull/286.diff","patch_url":"https://github.com/triplea-game/triplea/pull/286.patch","issue_url":"https://api.github.com/repos/triplea-game/triplea/issues/286","number":286,"state":"open","locked":false,"title":"GitHub map download and map download progress bars","user":{"login":"DanVanAtta","id":12397753,"avatar_url":"https://avatars.githubusercontent.com/u/12397753?v=3","gravatar_id":"","url":"https://api.github.com/users/DanVanAtta","html_url":"https://github.com/DanVanAtta","followers_url":"https://api.github.com/users/DanVanAtta/followers","following_url":"https://api.github.com/users/DanVanAtta/following{/other_user}","gists_url":"https://api.github.com/users/DanVanAtta/gists{/gist_id}","starred_url":"https://api.github.com/users/DanVanAtta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanVanAtta/subscriptions","organizations_url":"https://api.github.com/users/DanVanAtta/orgs","repos_url":"https://api.github.com/users/DanVanAtta/repos","events_url":"https://api.github.com/users/DanVanAtta/events{/privacy}","received_events_url":"https://api.github.com/users/DanVanAtta/received_events","type":"User","site_admin":false},"body":"## Functional Changes\r\n- do not prompt the user for the map list XML URL, go directly to the map download screen\r\n- store the location of the map list XML in a property file 'mapDownload.properties'\r\n- add a triplea_maps.xml, update to clean up and have URLs for github hosted maps instead of sourceforge\r\n- add progress bars to map download\r\n- download screen and progress bars are no longer modal, so a user can join the lobby or do other actions while a map download is occuring\r\n- map cache is now automatically refreshed after a map download completes\r\n- map download can now be cancelled\r\n\r\n## Testing\r\n- Check out the branch:\r\n  - git remote add github.com:DanVanAtta/triplea.git DanVanAtta\r\n  - git checkout DanVanAtta github_map_download\r\n\r\n- To test downloading maps from github and the updated map download UX:\r\n  - Update the file `mapDownload.properties`, uncomment the local `triplea_maps.xml` configuration line\r\n  - launch the game\r\n  - download a map \r\n\r\n- To test the automatic refresh of maps:\r\n  - open a game, and open the map selection screen\r\n  - now go through the map download process while leaving the map selection screen open in the background\r\n  - verify: when the map download completes, that the map selection screen is temporarily grayed out and then re-enabled\r\n\r\n- To test the non-modal map dialog\r\n  - open up the map download screen, now verify that you can join the lobby and perform other game actions\r\n\r\n- To test map download cancel\r\n  - start downloading a map, then close the download window, verify that there is no network activity and that the map file has not appeared in the list of available maps. (What has happened is there should be a partial file in the temporary directory that we would have moved when the download completes. when the JVM terminates this temp file is expected to be deleted)\r\n\r\n\r\n<!-- Reviewable:start -->\r\n[<img src=\"https://reviewable.io/review_button.png\" height=40 alt=\"Review on Reviewable\"/>](https://reviewable.io/reviews/triplea-game/triplea/286)\r\n<!-- Reviewable:end -->\r\n","created_at":"2015-12-04T09:51:44Z","updated_at":"2016-01-19T04:51:39Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d36bbee691897f7a0ffc70fe6337a33a059d4aaa","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/triplea-game/triplea/pulls/286/commits","review_comments_url":"https://api.github.com/repos/triplea-game/triplea/pulls/286/comments","review_comment_url":"https://api.github.com/repos/triplea-game/triplea/pulls/comments{/number}","comments_url":"https://api.github.com/repos/triplea-game/triplea/issues/286/comments","statuses_url":"https://api.github.com/repos/triplea-game/triplea/statuses/2d4127c83c0194de114e1194f031781a3e0ad2cc","head":{"label":"DanVanAtta:github_map_download","ref":"github_map_download","sha":"2d4127c83c0194de114e1194f031781a3e0ad2cc","user":{"login":"DanVanAtta","id":12397753,"avatar_url":"https://avatars.githubusercontent.com/u/12397753?v=3","gravatar_id":"","url":"https://api.github.com/users/DanVanAtta","html_url":"https://github.com/DanVanAtta","followers_url":"https://api.github.com/users/DanVanAtta/followers","following_url":"https://api.github.com/users/DanVanAtta/following{/other_user}","gists_url":"https://api.github.com/users/DanVanAtta/gists{/gist_id}","starred_url":"https://api.github.com/users/DanVanAtta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanVanAtta/subscriptions","organizations_url":"https://api.github.com/users/DanVanAtta/orgs","repos_url":"https://api.github.com/users/DanVanAtta/repos","events_url":"https://api.github.com/users/DanVanAtta/events{/privacy}","received_events_url":"https://api.github.com/users/DanVanAtta/received_events","type":"User","site_admin":false},"repo":{"id":39811826,"name":"triplea","full_name":"DanVanAtta/triplea","owner":{"login":"DanVanAtta","id":12397753,"avatar_url":"https://avatars.githubusercontent.com/u/12397753?v=3","gravatar_id":"","url":"https://api.github.com/users/DanVanAtta","html_url":"https://github.com/DanVanAtta","followers_url":"https://api.github.com/users/DanVanAtta/followers","following_url":"https://api.github.com/users/DanVanAtta/following{/other_user}","gists_url":"https://api.github.com/users/DanVanAtta/gists{/gist_id}","starred_url":"https://api.github.com/users/DanVanAtta/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DanVanAtta/subscriptions","organizations_url":"https://api.github.com/users/DanVanAtta/orgs","repos_url":"https://api.github.com/users/DanVanAtta/repos","events_url":"https://api.github.com/users/DanVanAtta/events{/privacy}","received_events_url":"https://api.github.com/users/DanVanAtta/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/DanVanAtta/triplea","description":"TripleA is a turn based strategy game and board game engine, similar to Axis & Allies or Risk.","fork":true,"url":"https://api.github.com/repos/DanVanAtta/triplea","forks_url":"https://api.github.com/repos/DanVanAtta/triplea/forks","keys_url":"https://api.github.com/repos/DanVanAtta/triplea/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DanVanAtta/triplea/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DanVanAtta/triplea/teams","hooks_url":"https://api.github.com/repos/DanVanAtta/triplea/hooks","issue_events_url":"https://api.github.com/repos/DanVanAtta/triplea/issues/events{/number}","events_url":"https://api.github.com/repos/DanVanAtta/triplea/events","assignees_url":"https://api.github.com/repos/DanVanAtta/triplea/assignees{/user}","branches_url":"https://api.github.com/repos/DanVanAtta/triplea/branches{/branch}","tags_url":"https://api.github.com/repos/DanVanAtta/triplea/tags","blobs_url":"https://api.github.com/repos/DanVanAtta/triplea/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DanVanAtta/triplea/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DanVanAtta/triplea/git/refs{/sha}","trees_url":"https://api.github.com/repos/DanVanAtta/triplea/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DanVanAtta/triplea/statuses/{sha}","languages_url":"https://api.github.com/repos/DanVanAtta/triplea/languages","stargazers_url":"https://api.github.com/repos/DanVanAtta/triplea/stargazers","contributors_url":"https://api.github.com/repos/DanVanAtta/triplea/contributors","subscribers_url":"https://api.github.com/repos/DanVanAtta/triplea/subscribers","subscription_url":"https://api.github.com/repos/DanVanAtta/triplea/subscription","commits_url":"https://api.github.com/repos/DanVanAtta/triplea/commits{/sha}","git_commits_url":"https://api.github.com/repos/DanVanAtta/triplea/git/commits{/sha}","comments_url":"https://api.github.com/repos/DanVanAtta/triplea/comments{/number}","issue_comment_url":"https://api.github.com/repos/DanVanAtta/triplea/issues/comments{/number}","contents_url":"https://api.github.com/repos/DanVanAtta/triplea/contents/{+path}","compare_url":"https://api.github.com/repos/DanVanAtta/triplea/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DanVanAtta/triplea/merges","archive_url":"https://api.github.com/repos/DanVanAtta/triplea/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DanVanAtta/triplea/downloads","issues_url":"https://api.github.com/repos/DanVanAtta/triplea/issues{/number}","pulls_url":"https://api.github.com/repos/DanVanAtta/triplea/pulls{/number}","milestones_url":"https://api.github.com/repos/DanVanAtta/triplea/milestones{/number}","notifications_url":"https://api.github.com/repos/DanVanAtta/triplea/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DanVanAtta/triplea/labels{/name}","releases_url":"https://api.github.com/repos/DanVanAtta/triplea/releases{/id}","created_at":"2015-07-28T03:48:44Z","updated_at":"2016-01-12T03:47:00Z","pushed_at":"2016-01-19T04:21:48Z","git_url":"git://github.com/DanVanAtta/triplea.git","ssh_url":"git@github.com:DanVanAtta/triplea.git","clone_url":"https://github.com/DanVanAtta/triplea.git","svn_url":"https://github.com/DanVanAtta/triplea","homepage":null,"size":685323,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":0,"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"triplea-game:master","ref":"master","sha":"4d063bb425a2ef1b95c8b5ec948919e74ed6a3c5","user":{"login":"triplea-game","id":13318615,"avatar_url":"https://avatars.githubusercontent.com/u/13318615?v=3","gravatar_id":"","url":"https://api.github.com/users/triplea-game","html_url":"https://github.com/triplea-game","followers_url":"https://api.github.com/users/triplea-game/followers","following_url":"https://api.github.com/users/triplea-game/following{/other_user}","gists_url":"https://api.github.com/users/triplea-game/gists{/gist_id}","starred_url":"https://api.github.com/users/triplea-game/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/triplea-game/subscriptions","organizations_url":"https://api.github.com/users/triplea-game/orgs","repos_url":"https://api.github.com/users/triplea-game/repos","events_url":"https://api.github.com/users/triplea-game/events{/privacy}","received_events_url":"https://api.github.com/users/triplea-game/received_events","type":"Organization","site_admin":false},"repo":{"id":39766308,"name":"triplea","full_name":"triplea-game/triplea","owner":{"login":"triplea-game","id":13318615,"avatar_url":"https://avatars.githubusercontent.com/u/13318615?v=3","gravatar_id":"","url":"https://api.github.com/users/triplea-game","html_url":"https://github.com/triplea-game","followers_url":"https://api.github.com/users/triplea-game/followers","following_url":"https://api.github.com/users/triplea-game/following{/other_user}","gists_url":"https://api.github.com/users/triplea-game/gists{/gist_id}","starred_url":"https://api.github.com/users/triplea-game/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/triplea-game/subscriptions","organizations_url":"https://api.github.com/users/triplea-game/orgs","repos_url":"https://api.github.com/users/triplea-game/repos","events_url":"https://api.github.com/users/triplea-game/events{/privacy}","received_events_url":"https://api.github.com/users/triplea-game/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/triplea-game/triplea","description":"TripleA is a turn based strategy game and board game engine, similar to Axis & Allies or Risk.","fork":false,"url":"https://api.github.com/repos/triplea-game/triplea","forks_url":"https://api.github.com/repos/triplea-game/triplea/forks","keys_url":"https://api.github.com/repos/triplea-game/triplea/keys{/key_id}","collaborators_url":"https://api.github.com/repos/triplea-game/triplea/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/triplea-game/triplea/teams","hooks_url":"https://api.github.com/repos/triplea-game/triplea/hooks","issue_events_url":"https://api.github.com/repos/triplea-game/triplea/issues/events{/number}","events_url":"https://api.github.com/repos/triplea-game/triplea/events","assignees_url":"https://api.github.com/repos/triplea-game/triplea/assignees{/user}","branches_url":"https://api.github.com/repos/triplea-game/triplea/branches{/branch}","tags_url":"https://api.github.com/repos/triplea-game/triplea/tags","blobs_url":"https://api.github.com/repos/triplea-game/triplea/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/triplea-game/triplea/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/triplea-game/triplea/git/refs{/sha}","trees_url":"https://api.github.com/repos/triplea-game/triplea/git/trees{/sha}","statuses_url":"https://api.github.com/repos/triplea-game/triplea/statuses/{sha}","languages_url":"https://api.github.com/repos/triplea-game/triplea/languages","stargazers_url":"https://api.github.com/repos/triplea-game/triplea/stargazers","contributors_url":"https://api.github.com/repos/triplea-game/triplea/contributors","subscribers_url":"https://api.github.com/repos/triplea-game/triplea/subscribers","subscription_url":"https://api.github.com/repos/triplea-game/triplea/subscription","commits_url":"https://api.github.com/repos/triplea-game/triplea/commits{/sha}","git_commits_url":"https://api.github.com/repos/triplea-game/triplea/git/commits{/sha}","comments_url":"https://api.github.com/repos/triplea-game/triplea/comments{/number}","issue_comment_url":"https://api.github.com/repos/triplea-game/triplea/issues/comments{/number}","contents_url":"https://api.github.com/repos/triplea-game/triplea/contents/{+path}","compare_url":"https://api.github.com/repos/triplea-game/triplea/compare/{base}...{head}","merges_url":"https://api.github.com/repos/triplea-game/triplea/merges","archive_url":"https://api.github.com/repos/triplea-game/triplea/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/triplea-game/triplea/downloads","issues_url":"https://api.github.com/repos/triplea-game/triplea/issues{/number}","pulls_url":"https://api.github.com/repos/triplea-game/triplea/pulls{/number}","milestones_url":"https://api.github.com/repos/triplea-game/triplea/milestones{/number}","notifications_url":"https://api.github.com/repos/triplea-game/triplea/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/triplea-game/triplea/labels{/name}","releases_url":"https://api.github.com/repos/triplea-game/triplea/releases{/id}","created_at":"2015-07-27T09:32:58Z","updated_at":"2016-01-11T16:44:57Z","pushed_at":"2016-01-19T04:21:53Z","git_url":"git://github.com/triplea-game/triplea.git","ssh_url":"git@github.com:triplea-game/triplea.git","clone_url":"https://github.com/triplea-game/triplea.git","svn_url":"https://github.com/triplea-game/triplea","homepage":null,"size":686597,"stargazers_count":16,"watchers_count":16,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":7,"mirror_url":null,"open_issues_count":44,"forks":7,"open_issues":44,"watchers":16,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/286"},"html":{"href":"https://github.com/triplea-game/triplea/pull/286"},"issue":{"href":"https://api.github.com/repos/triplea-game/triplea/issues/286"},"comments":{"href":"https://api.github.com/repos/triplea-game/triplea/issues/286/comments"},"review_comments":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/286/comments"},"review_comment":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/triplea-game/triplea/pulls/286/commits"},"statuses":{"href":"https://api.github.com/repos/triplea-game/triplea/statuses/2d4127c83c0194de114e1194f031781a3e0ad2cc"}}}}