{"action":"created","comment":{"url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/comments/170454780","pull_request_review_id":99144538,"id":170454780,"diff_hunk":"@@ -70,4 +70,13 @@ public int getTargetIndex() {\n     public void setTargetIndex(int targetIndex) {\n         this.targetIndex = targetIndex;\n     }\n+\n+    /**\n+     * Describes whether a command mutates the data in the AddressBook.\n+     *\n+     * Defaults to false.\n+     */\n+    public boolean isMutating() {","path":"src/seedu/addressbook/commands/Command.java","position":10,"original_position":10,"commit_id":"d0f2e981d328cf9fef6208fd4964b46ed5cd9e3f","original_commit_id":"d0f2e981d328cf9fef6208fd4964b46ed5cd9e3f","user":{"login":"goweiwen","id":1926229,"avatar_url":"https://avatars3.githubusercontent.com/u/1926229?v=4","gravatar_id":"","url":"https://api.github.com/users/goweiwen","html_url":"https://github.com/goweiwen","followers_url":"https://api.github.com/users/goweiwen/followers","following_url":"https://api.github.com/users/goweiwen/following{/other_user}","gists_url":"https://api.github.com/users/goweiwen/gists{/gist_id}","starred_url":"https://api.github.com/users/goweiwen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goweiwen/subscriptions","organizations_url":"https://api.github.com/users/goweiwen/orgs","repos_url":"https://api.github.com/users/goweiwen/repos","events_url":"https://api.github.com/users/goweiwen/events{/privacy}","received_events_url":"https://api.github.com/users/goweiwen/received_events","type":"User","site_admin":false},"body":"Having a default implementation for the `isMutating` method helps to reduce the amount of code. However, some may argue that choosing `false` (or `true`) as the default is arbitrary and hurts the intuitiveness of the code. Making the method `abstract` forces all child classes to declare whether it is a mutating command or not, rather than depend on an arbitrary decision made in the parent class.\r\n","created_at":"2018-02-25T14:29:39Z","updated_at":"2018-02-25T14:52:37Z","html_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276#discussion_r170454780","pull_request_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/comments/170454780"},"html":{"href":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276#discussion_r170454780"},"pull_request":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276"}}},"pull_request":{"url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276","id":169877677,"html_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276","diff_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276.diff","patch_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276.patch","issue_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/276","number":276,"state":"open","locked":false,"title":"[W6.4d][W09-B4] Jethro Kuan","user":{"login":"jethrokuan","id":1667473,"avatar_url":"https://avatars0.githubusercontent.com/u/1667473?v=4","gravatar_id":"","url":"https://api.github.com/users/jethrokuan","html_url":"https://github.com/jethrokuan","followers_url":"https://api.github.com/users/jethrokuan/followers","following_url":"https://api.github.com/users/jethrokuan/following{/other_user}","gists_url":"https://api.github.com/users/jethrokuan/gists{/gist_id}","starred_url":"https://api.github.com/users/jethrokuan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jethrokuan/subscriptions","organizations_url":"https://api.github.com/users/jethrokuan/orgs","repos_url":"https://api.github.com/users/jethrokuan/repos","events_url":"https://api.github.com/users/jethrokuan/events{/privacy}","received_events_url":"https://api.github.com/users/jethrokuan/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-02-19T04:48:41Z","updated_at":"2018-02-25T14:52:37Z","closed_at":null,"merged_at":null,"merge_commit_sha":"987a5908ba993c43f3610e3fa1075d00b398d041","assignee":{"login":"hwkchia","id":16570616,"avatar_url":"https://avatars2.githubusercontent.com/u/16570616?v=4","gravatar_id":"","url":"https://api.github.com/users/hwkchia","html_url":"https://github.com/hwkchia","followers_url":"https://api.github.com/users/hwkchia/followers","following_url":"https://api.github.com/users/hwkchia/following{/other_user}","gists_url":"https://api.github.com/users/hwkchia/gists{/gist_id}","starred_url":"https://api.github.com/users/hwkchia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hwkchia/subscriptions","organizations_url":"https://api.github.com/users/hwkchia/orgs","repos_url":"https://api.github.com/users/hwkchia/repos","events_url":"https://api.github.com/users/hwkchia/events{/privacy}","received_events_url":"https://api.github.com/users/hwkchia/received_events","type":"User","site_admin":false},"assignees":[{"login":"goweiwen","id":1926229,"avatar_url":"https://avatars3.githubusercontent.com/u/1926229?v=4","gravatar_id":"","url":"https://api.github.com/users/goweiwen","html_url":"https://github.com/goweiwen","followers_url":"https://api.github.com/users/goweiwen/followers","following_url":"https://api.github.com/users/goweiwen/following{/other_user}","gists_url":"https://api.github.com/users/goweiwen/gists{/gist_id}","starred_url":"https://api.github.com/users/goweiwen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goweiwen/subscriptions","organizations_url":"https://api.github.com/users/goweiwen/orgs","repos_url":"https://api.github.com/users/goweiwen/repos","events_url":"https://api.github.com/users/goweiwen/events{/privacy}","received_events_url":"https://api.github.com/users/goweiwen/received_events","type":"User","site_admin":false},{"login":"hwkchia","id":16570616,"avatar_url":"https://avatars2.githubusercontent.com/u/16570616?v=4","gravatar_id":"","url":"https://api.github.com/users/hwkchia","html_url":"https://github.com/hwkchia","followers_url":"https://api.github.com/users/hwkchia/followers","following_url":"https://api.github.com/users/hwkchia/following{/other_user}","gists_url":"https://api.github.com/users/hwkchia/gists{/gist_id}","starred_url":"https://api.github.com/users/hwkchia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hwkchia/subscriptions","organizations_url":"https://api.github.com/users/hwkchia/orgs","repos_url":"https://api.github.com/users/hwkchia/repos","events_url":"https://api.github.com/users/hwkchia/events{/privacy}","received_events_url":"https://api.github.com/users/hwkchia/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":784877198,"url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/labels/team.B4","name":"team.B4","color":"e6e6e6","default":false},{"id":784877315,"url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/labels/tutorial.W09","name":"tutorial.W09","color":"e6e6e6","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276/commits","review_comments_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276/comments","review_comment_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/comments{/number}","comments_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/276/comments","statuses_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/statuses/d0f2e981d328cf9fef6208fd4964b46ed5cd9e3f","head":{"label":"jethrokuan:LO/polymorphism","ref":"LO/polymorphism","sha":"d0f2e981d328cf9fef6208fd4964b46ed5cd9e3f","user":{"login":"jethrokuan","id":1667473,"avatar_url":"https://avatars0.githubusercontent.com/u/1667473?v=4","gravatar_id":"","url":"https://api.github.com/users/jethrokuan","html_url":"https://github.com/jethrokuan","followers_url":"https://api.github.com/users/jethrokuan/followers","following_url":"https://api.github.com/users/jethrokuan/following{/other_user}","gists_url":"https://api.github.com/users/jethrokuan/gists{/gist_id}","starred_url":"https://api.github.com/users/jethrokuan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jethrokuan/subscriptions","organizations_url":"https://api.github.com/users/jethrokuan/orgs","repos_url":"https://api.github.com/users/jethrokuan/repos","events_url":"https://api.github.com/users/jethrokuan/events{/privacy}","received_events_url":"https://api.github.com/users/jethrokuan/received_events","type":"User","site_admin":false},"repo":{"id":121495417,"name":"addressbook-level3","full_name":"jethrokuan/addressbook-level3","owner":{"login":"jethrokuan","id":1667473,"avatar_url":"https://avatars0.githubusercontent.com/u/1667473?v=4","gravatar_id":"","url":"https://api.github.com/users/jethrokuan","html_url":"https://github.com/jethrokuan","followers_url":"https://api.github.com/users/jethrokuan/followers","following_url":"https://api.github.com/users/jethrokuan/following{/other_user}","gists_url":"https://api.github.com/users/jethrokuan/gists{/gist_id}","starred_url":"https://api.github.com/users/jethrokuan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jethrokuan/subscriptions","organizations_url":"https://api.github.com/users/jethrokuan/orgs","repos_url":"https://api.github.com/users/jethrokuan/repos","events_url":"https://api.github.com/users/jethrokuan/events{/privacy}","received_events_url":"https://api.github.com/users/jethrokuan/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jethrokuan/addressbook-level3","description":"Address Book sample application (Level 3)","fork":true,"url":"https://api.github.com/repos/jethrokuan/addressbook-level3","forks_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/forks","keys_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/teams","hooks_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/hooks","issue_events_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/issues/events{/number}","events_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/events","assignees_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/assignees{/user}","branches_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/branches{/branch}","tags_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/tags","blobs_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/git/refs{/sha}","trees_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/statuses/{sha}","languages_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/languages","stargazers_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/stargazers","contributors_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/contributors","subscribers_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/subscribers","subscription_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/subscription","commits_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/commits{/sha}","git_commits_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/git/commits{/sha}","comments_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/comments{/number}","issue_comment_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/issues/comments{/number}","contents_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/contents/{+path}","compare_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/merges","archive_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/downloads","issues_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/issues{/number}","pulls_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/pulls{/number}","milestones_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/milestones{/number}","notifications_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/labels{/name}","releases_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/releases{/id}","deployments_url":"https://api.github.com/repos/jethrokuan/addressbook-level3/deployments","created_at":"2018-02-14T10:00:45Z","updated_at":"2018-02-14T10:00:47Z","pushed_at":"2018-02-21T04:58:50Z","git_url":"git://github.com/jethrokuan/addressbook-level3.git","ssh_url":"git@github.com:jethrokuan/addressbook-level3.git","clone_url":"https://github.com/jethrokuan/addressbook-level3.git","svn_url":"https://github.com/jethrokuan/addressbook-level3","homepage":null,"size":463,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"nus-cs2103-AY1718S2:master","ref":"master","sha":"ebc6ca1553377ea25cba4cd3fb06f15023c39191","user":{"login":"nus-cs2103-AY1718S2","id":34544003,"avatar_url":"https://avatars0.githubusercontent.com/u/34544003?v=4","gravatar_id":"","url":"https://api.github.com/users/nus-cs2103-AY1718S2","html_url":"https://github.com/nus-cs2103-AY1718S2","followers_url":"https://api.github.com/users/nus-cs2103-AY1718S2/followers","following_url":"https://api.github.com/users/nus-cs2103-AY1718S2/following{/other_user}","gists_url":"https://api.github.com/users/nus-cs2103-AY1718S2/gists{/gist_id}","starred_url":"https://api.github.com/users/nus-cs2103-AY1718S2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nus-cs2103-AY1718S2/subscriptions","organizations_url":"https://api.github.com/users/nus-cs2103-AY1718S2/orgs","repos_url":"https://api.github.com/users/nus-cs2103-AY1718S2/repos","events_url":"https://api.github.com/users/nus-cs2103-AY1718S2/events{/privacy}","received_events_url":"https://api.github.com/users/nus-cs2103-AY1718S2/received_events","type":"Organization","site_admin":false},"repo":{"id":115011790,"name":"addressbook-level3","full_name":"nus-cs2103-AY1718S2/addressbook-level3","owner":{"login":"nus-cs2103-AY1718S2","id":34544003,"avatar_url":"https://avatars0.githubusercontent.com/u/34544003?v=4","gravatar_id":"","url":"https://api.github.com/users/nus-cs2103-AY1718S2","html_url":"https://github.com/nus-cs2103-AY1718S2","followers_url":"https://api.github.com/users/nus-cs2103-AY1718S2/followers","following_url":"https://api.github.com/users/nus-cs2103-AY1718S2/following{/other_user}","gists_url":"https://api.github.com/users/nus-cs2103-AY1718S2/gists{/gist_id}","starred_url":"https://api.github.com/users/nus-cs2103-AY1718S2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nus-cs2103-AY1718S2/subscriptions","organizations_url":"https://api.github.com/users/nus-cs2103-AY1718S2/orgs","repos_url":"https://api.github.com/users/nus-cs2103-AY1718S2/repos","events_url":"https://api.github.com/users/nus-cs2103-AY1718S2/events{/privacy}","received_events_url":"https://api.github.com/users/nus-cs2103-AY1718S2/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3","description":"Address Book sample application (Level 3)","fork":true,"url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3","forks_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/forks","keys_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/teams","hooks_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/hooks","issue_events_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/events{/number}","events_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/events","assignees_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/assignees{/user}","branches_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/branches{/branch}","tags_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/tags","blobs_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/git/refs{/sha}","trees_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/statuses/{sha}","languages_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/languages","stargazers_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/stargazers","contributors_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/contributors","subscribers_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/subscribers","subscription_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/subscription","commits_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/commits{/sha}","git_commits_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/git/commits{/sha}","comments_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/comments{/number}","issue_comment_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/comments{/number}","contents_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/contents/{+path}","compare_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/merges","archive_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/downloads","issues_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues{/number}","pulls_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls{/number}","milestones_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/milestones{/number}","notifications_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/labels{/name}","releases_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/releases{/id}","deployments_url":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/deployments","created_at":"2017-12-21T14:01:32Z","updated_at":"2018-02-25T08:14:35Z","pushed_at":"2018-02-25T14:36:40Z","git_url":"git://github.com/nus-cs2103-AY1718S2/addressbook-level3.git","ssh_url":"git@github.com:nus-cs2103-AY1718S2/addressbook-level3.git","clone_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3.git","svn_url":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3","homepage":null,"size":468,"stargazers_count":1,"watchers_count":1,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":159,"mirror_url":null,"archived":false,"open_issues_count":525,"license":null,"forks":159,"open_issues":525,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276"},"html":{"href":"https://github.com/nus-cs2103-AY1718S2/addressbook-level3/pull/276"},"issue":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/276"},"comments":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/issues/276/comments"},"review_comments":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276/comments"},"review_comment":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/pulls/276/commits"},"statuses":{"href":"https://api.github.com/repos/nus-cs2103-AY1718S2/addressbook-level3/statuses/d0f2e981d328cf9fef6208fd4964b46ed5cd9e3f"}},"author_association":"NONE"}}
{"actor":{"display_login":"goweiwen"}}