{"action":"created","comment":{"url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/comments/129207480","pull_request_review_id":51954797,"id":129207480,"diff_hunk":"@@ -0,0 +1,36 @@\n+/*\n+ MIT License\n+ \n+ Copyright (c) 2017 MessageKit\n+ \n+ Permission is hereby granted, free of charge, to any person obtaining a copy\n+ of this software and associated documentation files (the \"Software\"), to deal\n+ in the Software without restriction, including without limitation the rights\n+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n+ copies of the Software, and to permit persons to whom the Software is\n+ furnished to do so, subject to the following conditions:\n+ \n+ The above copyright notice and this permission notice shall be included in all\n+ copies or substantial portions of the Software.\n+ \n+ THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n+ SOFTWARE.\n+ */\n+\n+import Foundation\n+\n+public protocol MessageType {\n+\n+    var sender: Sender { get }\n+\n+    var messageId: String { get }\n+\n+    var sentDate: Date { get }\n+\n+    var data: MessageData { get }","path":"Sources/MessageType.swift","position":35,"original_position":35,"commit_id":"058b4fdd1b75e65f0f3c9b8dc3bcc2232d226b02","original_commit_id":"f1d7b0aaecbdbb167291f56809f14e71fc5ebc83","user":{"login":"lzyraining","id":14967062,"avatar_url":"https://avatars1.githubusercontent.com/u/14967062?v=4","gravatar_id":"","url":"https://api.github.com/users/lzyraining","html_url":"https://github.com/lzyraining","followers_url":"https://api.github.com/users/lzyraining/followers","following_url":"https://api.github.com/users/lzyraining/following{/other_user}","gists_url":"https://api.github.com/users/lzyraining/gists{/gist_id}","starred_url":"https://api.github.com/users/lzyraining/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lzyraining/subscriptions","organizations_url":"https://api.github.com/users/lzyraining/orgs","repos_url":"https://api.github.com/users/lzyraining/repos","events_url":"https://api.github.com/users/lzyraining/events{/privacy}","received_events_url":"https://api.github.com/users/lzyraining/received_events","type":"User","site_admin":false},"body":"I also get confused with naming. Here \"MessageData\" is the enum of different message category, while the protocol is holding the message content. It's better to name the protocol as \"MessageData\" and the enum as \"MessageType\".","created_at":"2017-07-25T04:01:27Z","updated_at":"2017-07-25T04:01:27Z","html_url":"https://github.com/MessageKit/MessageKit/pull/5#discussion_r129207480","pull_request_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5","_links":{"self":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/comments/129207480"},"html":{"href":"https://github.com/MessageKit/MessageKit/pull/5#discussion_r129207480"},"pull_request":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5"}}},"pull_request":{"url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5","id":131910134,"html_url":"https://github.com/MessageKit/MessageKit/pull/5","diff_url":"https://github.com/MessageKit/MessageKit/pull/5.diff","patch_url":"https://github.com/MessageKit/MessageKit/pull/5.patch","issue_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/5","number":5,"state":"open","locked":false,"title":"[WIP] v0.1.0","user":{"login":"SD10","id":7445580,"avatar_url":"https://avatars0.githubusercontent.com/u/7445580?v=4","gravatar_id":"","url":"https://api.github.com/users/SD10","html_url":"https://github.com/SD10","followers_url":"https://api.github.com/users/SD10/followers","following_url":"https://api.github.com/users/SD10/following{/other_user}","gists_url":"https://api.github.com/users/SD10/gists{/gist_id}","starred_url":"https://api.github.com/users/SD10/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SD10/subscriptions","organizations_url":"https://api.github.com/users/SD10/orgs","repos_url":"https://api.github.com/users/SD10/repos","events_url":"https://api.github.com/users/SD10/events{/privacy}","received_events_url":"https://api.github.com/users/SD10/received_events","type":"User","site_admin":false},"body":"","created_at":"2017-07-22T19:29:09Z","updated_at":"2017-07-25T04:01:27Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6311330b6ebba9baa415fc78f3b6a5a56177fac4","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5/commits","review_comments_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5/comments","review_comment_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls/comments{/number}","comments_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/5/comments","statuses_url":"https://api.github.com/repos/MessageKit/MessageKit/statuses/058b4fdd1b75e65f0f3c9b8dc3bcc2232d226b02","head":{"label":"MessageKit:v0.1.0","ref":"v0.1.0","sha":"058b4fdd1b75e65f0f3c9b8dc3bcc2232d226b02","user":{"login":"MessageKit","id":30243544,"avatar_url":"https://avatars3.githubusercontent.com/u/30243544?v=4","gravatar_id":"","url":"https://api.github.com/users/MessageKit","html_url":"https://github.com/MessageKit","followers_url":"https://api.github.com/users/MessageKit/followers","following_url":"https://api.github.com/users/MessageKit/following{/other_user}","gists_url":"https://api.github.com/users/MessageKit/gists{/gist_id}","starred_url":"https://api.github.com/users/MessageKit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MessageKit/subscriptions","organizations_url":"https://api.github.com/users/MessageKit/orgs","repos_url":"https://api.github.com/users/MessageKit/repos","events_url":"https://api.github.com/users/MessageKit/events{/privacy}","received_events_url":"https://api.github.com/users/MessageKit/received_events","type":"Organization","site_admin":false},"repo":{"id":97516603,"name":"MessageKit","full_name":"MessageKit/MessageKit","owner":{"login":"MessageKit","id":30243544,"avatar_url":"https://avatars3.githubusercontent.com/u/30243544?v=4","gravatar_id":"","url":"https://api.github.com/users/MessageKit","html_url":"https://github.com/MessageKit","followers_url":"https://api.github.com/users/MessageKit/followers","following_url":"https://api.github.com/users/MessageKit/following{/other_user}","gists_url":"https://api.github.com/users/MessageKit/gists{/gist_id}","starred_url":"https://api.github.com/users/MessageKit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MessageKit/subscriptions","organizations_url":"https://api.github.com/users/MessageKit/orgs","repos_url":"https://api.github.com/users/MessageKit/repos","events_url":"https://api.github.com/users/MessageKit/events{/privacy}","received_events_url":"https://api.github.com/users/MessageKit/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/MessageKit/MessageKit","description":"In-progress: A community-driven replacement for JSQMessagesViewController","fork":false,"url":"https://api.github.com/repos/MessageKit/MessageKit","forks_url":"https://api.github.com/repos/MessageKit/MessageKit/forks","keys_url":"https://api.github.com/repos/MessageKit/MessageKit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MessageKit/MessageKit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MessageKit/MessageKit/teams","hooks_url":"https://api.github.com/repos/MessageKit/MessageKit/hooks","issue_events_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/events{/number}","events_url":"https://api.github.com/repos/MessageKit/MessageKit/events","assignees_url":"https://api.github.com/repos/MessageKit/MessageKit/assignees{/user}","branches_url":"https://api.github.com/repos/MessageKit/MessageKit/branches{/branch}","tags_url":"https://api.github.com/repos/MessageKit/MessageKit/tags","blobs_url":"https://api.github.com/repos/MessageKit/MessageKit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MessageKit/MessageKit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MessageKit/MessageKit/git/refs{/sha}","trees_url":"https://api.github.com/repos/MessageKit/MessageKit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MessageKit/MessageKit/statuses/{sha}","languages_url":"https://api.github.com/repos/MessageKit/MessageKit/languages","stargazers_url":"https://api.github.com/repos/MessageKit/MessageKit/stargazers","contributors_url":"https://api.github.com/repos/MessageKit/MessageKit/contributors","subscribers_url":"https://api.github.com/repos/MessageKit/MessageKit/subscribers","subscription_url":"https://api.github.com/repos/MessageKit/MessageKit/subscription","commits_url":"https://api.github.com/repos/MessageKit/MessageKit/commits{/sha}","git_commits_url":"https://api.github.com/repos/MessageKit/MessageKit/git/commits{/sha}","comments_url":"https://api.github.com/repos/MessageKit/MessageKit/comments{/number}","issue_comment_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/comments{/number}","contents_url":"https://api.github.com/repos/MessageKit/MessageKit/contents/{+path}","compare_url":"https://api.github.com/repos/MessageKit/MessageKit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MessageKit/MessageKit/merges","archive_url":"https://api.github.com/repos/MessageKit/MessageKit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MessageKit/MessageKit/downloads","issues_url":"https://api.github.com/repos/MessageKit/MessageKit/issues{/number}","pulls_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls{/number}","milestones_url":"https://api.github.com/repos/MessageKit/MessageKit/milestones{/number}","notifications_url":"https://api.github.com/repos/MessageKit/MessageKit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MessageKit/MessageKit/labels{/name}","releases_url":"https://api.github.com/repos/MessageKit/MessageKit/releases{/id}","deployments_url":"https://api.github.com/repos/MessageKit/MessageKit/deployments","created_at":"2017-07-17T19:56:13Z","updated_at":"2017-07-25T03:45:53Z","pushed_at":"2017-07-25T01:20:47Z","git_url":"git://github.com/MessageKit/MessageKit.git","ssh_url":"git@github.com:MessageKit/MessageKit.git","clone_url":"https://github.com/MessageKit/MessageKit.git","svn_url":"https://github.com/MessageKit/MessageKit","homepage":"","size":95,"stargazers_count":321,"watchers_count":321,"language":"Swift","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":18,"mirror_url":null,"open_issues_count":5,"forks":18,"open_issues":5,"watchers":321,"default_branch":"master"}},"base":{"label":"MessageKit:master","ref":"master","sha":"bbc9884300de59468b8a8f49a4357a6cea062d92","user":{"login":"MessageKit","id":30243544,"avatar_url":"https://avatars3.githubusercontent.com/u/30243544?v=4","gravatar_id":"","url":"https://api.github.com/users/MessageKit","html_url":"https://github.com/MessageKit","followers_url":"https://api.github.com/users/MessageKit/followers","following_url":"https://api.github.com/users/MessageKit/following{/other_user}","gists_url":"https://api.github.com/users/MessageKit/gists{/gist_id}","starred_url":"https://api.github.com/users/MessageKit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MessageKit/subscriptions","organizations_url":"https://api.github.com/users/MessageKit/orgs","repos_url":"https://api.github.com/users/MessageKit/repos","events_url":"https://api.github.com/users/MessageKit/events{/privacy}","received_events_url":"https://api.github.com/users/MessageKit/received_events","type":"Organization","site_admin":false},"repo":{"id":97516603,"name":"MessageKit","full_name":"MessageKit/MessageKit","owner":{"login":"MessageKit","id":30243544,"avatar_url":"https://avatars3.githubusercontent.com/u/30243544?v=4","gravatar_id":"","url":"https://api.github.com/users/MessageKit","html_url":"https://github.com/MessageKit","followers_url":"https://api.github.com/users/MessageKit/followers","following_url":"https://api.github.com/users/MessageKit/following{/other_user}","gists_url":"https://api.github.com/users/MessageKit/gists{/gist_id}","starred_url":"https://api.github.com/users/MessageKit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MessageKit/subscriptions","organizations_url":"https://api.github.com/users/MessageKit/orgs","repos_url":"https://api.github.com/users/MessageKit/repos","events_url":"https://api.github.com/users/MessageKit/events{/privacy}","received_events_url":"https://api.github.com/users/MessageKit/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/MessageKit/MessageKit","description":"In-progress: A community-driven replacement for JSQMessagesViewController","fork":false,"url":"https://api.github.com/repos/MessageKit/MessageKit","forks_url":"https://api.github.com/repos/MessageKit/MessageKit/forks","keys_url":"https://api.github.com/repos/MessageKit/MessageKit/keys{/key_id}","collaborators_url":"https://api.github.com/repos/MessageKit/MessageKit/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/MessageKit/MessageKit/teams","hooks_url":"https://api.github.com/repos/MessageKit/MessageKit/hooks","issue_events_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/events{/number}","events_url":"https://api.github.com/repos/MessageKit/MessageKit/events","assignees_url":"https://api.github.com/repos/MessageKit/MessageKit/assignees{/user}","branches_url":"https://api.github.com/repos/MessageKit/MessageKit/branches{/branch}","tags_url":"https://api.github.com/repos/MessageKit/MessageKit/tags","blobs_url":"https://api.github.com/repos/MessageKit/MessageKit/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/MessageKit/MessageKit/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/MessageKit/MessageKit/git/refs{/sha}","trees_url":"https://api.github.com/repos/MessageKit/MessageKit/git/trees{/sha}","statuses_url":"https://api.github.com/repos/MessageKit/MessageKit/statuses/{sha}","languages_url":"https://api.github.com/repos/MessageKit/MessageKit/languages","stargazers_url":"https://api.github.com/repos/MessageKit/MessageKit/stargazers","contributors_url":"https://api.github.com/repos/MessageKit/MessageKit/contributors","subscribers_url":"https://api.github.com/repos/MessageKit/MessageKit/subscribers","subscription_url":"https://api.github.com/repos/MessageKit/MessageKit/subscription","commits_url":"https://api.github.com/repos/MessageKit/MessageKit/commits{/sha}","git_commits_url":"https://api.github.com/repos/MessageKit/MessageKit/git/commits{/sha}","comments_url":"https://api.github.com/repos/MessageKit/MessageKit/comments{/number}","issue_comment_url":"https://api.github.com/repos/MessageKit/MessageKit/issues/comments{/number}","contents_url":"https://api.github.com/repos/MessageKit/MessageKit/contents/{+path}","compare_url":"https://api.github.com/repos/MessageKit/MessageKit/compare/{base}...{head}","merges_url":"https://api.github.com/repos/MessageKit/MessageKit/merges","archive_url":"https://api.github.com/repos/MessageKit/MessageKit/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/MessageKit/MessageKit/downloads","issues_url":"https://api.github.com/repos/MessageKit/MessageKit/issues{/number}","pulls_url":"https://api.github.com/repos/MessageKit/MessageKit/pulls{/number}","milestones_url":"https://api.github.com/repos/MessageKit/MessageKit/milestones{/number}","notifications_url":"https://api.github.com/repos/MessageKit/MessageKit/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/MessageKit/MessageKit/labels{/name}","releases_url":"https://api.github.com/repos/MessageKit/MessageKit/releases{/id}","deployments_url":"https://api.github.com/repos/MessageKit/MessageKit/deployments","created_at":"2017-07-17T19:56:13Z","updated_at":"2017-07-25T03:45:53Z","pushed_at":"2017-07-25T01:20:47Z","git_url":"git://github.com/MessageKit/MessageKit.git","ssh_url":"git@github.com:MessageKit/MessageKit.git","clone_url":"https://github.com/MessageKit/MessageKit.git","svn_url":"https://github.com/MessageKit/MessageKit","homepage":"","size":95,"stargazers_count":321,"watchers_count":321,"language":"Swift","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":18,"mirror_url":null,"open_issues_count":5,"forks":18,"open_issues":5,"watchers":321,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5"},"html":{"href":"https://github.com/MessageKit/MessageKit/pull/5"},"issue":{"href":"https://api.github.com/repos/MessageKit/MessageKit/issues/5"},"comments":{"href":"https://api.github.com/repos/MessageKit/MessageKit/issues/5/comments"},"review_comments":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5/comments"},"review_comment":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/MessageKit/MessageKit/pulls/5/commits"},"statuses":{"href":"https://api.github.com/repos/MessageKit/MessageKit/statuses/058b4fdd1b75e65f0f3c9b8dc3bcc2232d226b02"}}}}
{"actor":{"display_login":"lzyraining"}}