{"action":"created","comment":{"url":"https://api.github.com/repos/yegor256/netbout/pulls/comments/55417644","id":55417644,"diff_hunk":"@@ -84,4 +85,57 @@ public void createsAndLoadsAttachment() throws Exception {\n         );\n     }\n \n+    /**\n+     * DyAttachment can obtain author of an attachment.\n+     * @throws Exception If there is some problem inside\n+     */\n+    @Test\n+    public void obtainsAuthor() throws Exception {\n+        final String alias = \"charlie\";\n+        final Aliases aliases =\n+            new DyBase().user(new URN(\"urn:test:89636\")).aliases();\n+        aliases.add(alias);\n+        final Inbox inbox = aliases.iterate().iterator().next().inbox();\n+        final Bout bout = inbox.bout(inbox.start());\n+        final Attachments attachments = bout.attachments();\n+        final String name = \"name\";\n+        attachments.create(name);\n+        final Attachment attachment = attachments.get(name);\n+        MatcherAssert.assertThat(\n+            attachment.author(), Matchers.equalTo(alias)\n+        );\n+        attachments.delete(name);\n+    }\n+\n+    // @todo #839:30min DyAttachment Item should have an attribute for the\n+    //  creation time of the attachment. Remove @Ignore from this test to check","path":"netbout-web/src/test/java/com/netbout/dynamo/DyAttachmentITCase.java","position":35,"original_position":35,"commit_id":"fffab30dbd52aff797be239ee98bd610c54a3618","original_commit_id":"fffab30dbd52aff797be239ee98bd610c54a3618","user":{"login":"CarlosGines","id":16798121,"avatar_url":"https://avatars.githubusercontent.com/u/16798121?v=3","gravatar_id":"","url":"https://api.github.com/users/CarlosGines","html_url":"https://github.com/CarlosGines","followers_url":"https://api.github.com/users/CarlosGines/followers","following_url":"https://api.github.com/users/CarlosGines/following{/other_user}","gists_url":"https://api.github.com/users/CarlosGines/gists{/gist_id}","starred_url":"https://api.github.com/users/CarlosGines/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CarlosGines/subscriptions","organizations_url":"https://api.github.com/users/CarlosGines/orgs","repos_url":"https://api.github.com/users/CarlosGines/repos","events_url":"https://api.github.com/users/CarlosGines/events{/privacy}","received_events_url":"https://api.github.com/users/CarlosGines/received_events","type":"User","site_admin":false},"body":"@mkordas Creation time field does not exist in remote db, so `DyAttachment.date()` crashes.","created_at":"2016-03-08T19:56:22Z","updated_at":"2016-03-08T19:56:22Z","html_url":"https://github.com/yegor256/netbout/pull/1078#discussion_r55417644","pull_request_url":"https://api.github.com/repos/yegor256/netbout/pulls/1078","_links":{"self":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/comments/55417644"},"html":{"href":"https://github.com/yegor256/netbout/pull/1078#discussion_r55417644"},"pull_request":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/1078"}}},"pull_request":{"url":"https://api.github.com/repos/yegor256/netbout/pulls/1078","id":62015541,"html_url":"https://github.com/yegor256/netbout/pull/1078","diff_url":"https://github.com/yegor256/netbout/pull/1078.diff","patch_url":"https://github.com/yegor256/netbout/pull/1078.patch","issue_url":"https://api.github.com/repos/yegor256/netbout/issues/1078","number":1078,"state":"open","locked":false,"title":"#839 Added author() and date() to Attachment and implementations.","user":{"login":"CarlosGines","id":16798121,"avatar_url":"https://avatars.githubusercontent.com/u/16798121?v=3","gravatar_id":"","url":"https://api.github.com/users/CarlosGines","html_url":"https://github.com/CarlosGines","followers_url":"https://api.github.com/users/CarlosGines/followers","following_url":"https://api.github.com/users/CarlosGines/following{/other_user}","gists_url":"https://api.github.com/users/CarlosGines/gists{/gist_id}","starred_url":"https://api.github.com/users/CarlosGines/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CarlosGines/subscriptions","organizations_url":"https://api.github.com/users/CarlosGines/orgs","repos_url":"https://api.github.com/users/CarlosGines/repos","events_url":"https://api.github.com/users/CarlosGines/events{/privacy}","received_events_url":"https://api.github.com/users/CarlosGines/received_events","type":"User","site_admin":false},"body":"Fixes for #839:\r\n- Added author() and date() methods to Attachment.\r\n- Implemented those methods in all Attachment implementations.\r\n- Added Unit and Integration tests.\r\n- Added new puzzle in `DyAttachmentITCase`","created_at":"2016-03-08T02:28:03Z","updated_at":"2016-03-08T19:56:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0936092dc970c90652202f8eb77f0f42c20fe427","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/yegor256/netbout/pulls/1078/commits","review_comments_url":"https://api.github.com/repos/yegor256/netbout/pulls/1078/comments","review_comment_url":"https://api.github.com/repos/yegor256/netbout/pulls/comments{/number}","comments_url":"https://api.github.com/repos/yegor256/netbout/issues/1078/comments","statuses_url":"https://api.github.com/repos/yegor256/netbout/statuses/fffab30dbd52aff797be239ee98bd610c54a3618","head":{"label":"CarlosGines:#839","ref":"#839","sha":"fffab30dbd52aff797be239ee98bd610c54a3618","user":{"login":"CarlosGines","id":16798121,"avatar_url":"https://avatars.githubusercontent.com/u/16798121?v=3","gravatar_id":"","url":"https://api.github.com/users/CarlosGines","html_url":"https://github.com/CarlosGines","followers_url":"https://api.github.com/users/CarlosGines/followers","following_url":"https://api.github.com/users/CarlosGines/following{/other_user}","gists_url":"https://api.github.com/users/CarlosGines/gists{/gist_id}","starred_url":"https://api.github.com/users/CarlosGines/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CarlosGines/subscriptions","organizations_url":"https://api.github.com/users/CarlosGines/orgs","repos_url":"https://api.github.com/users/CarlosGines/repos","events_url":"https://api.github.com/users/CarlosGines/events{/privacy}","received_events_url":"https://api.github.com/users/CarlosGines/received_events","type":"User","site_admin":false},"repo":{"id":53325068,"name":"netbout","full_name":"CarlosGines/netbout","owner":{"login":"CarlosGines","id":16798121,"avatar_url":"https://avatars.githubusercontent.com/u/16798121?v=3","gravatar_id":"","url":"https://api.github.com/users/CarlosGines","html_url":"https://github.com/CarlosGines","followers_url":"https://api.github.com/users/CarlosGines/followers","following_url":"https://api.github.com/users/CarlosGines/following{/other_user}","gists_url":"https://api.github.com/users/CarlosGines/gists{/gist_id}","starred_url":"https://api.github.com/users/CarlosGines/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CarlosGines/subscriptions","organizations_url":"https://api.github.com/users/CarlosGines/orgs","repos_url":"https://api.github.com/users/CarlosGines/repos","events_url":"https://api.github.com/users/CarlosGines/events{/privacy}","received_events_url":"https://api.github.com/users/CarlosGines/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/CarlosGines/netbout","description":"Private talks made easy","fork":true,"url":"https://api.github.com/repos/CarlosGines/netbout","forks_url":"https://api.github.com/repos/CarlosGines/netbout/forks","keys_url":"https://api.github.com/repos/CarlosGines/netbout/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CarlosGines/netbout/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CarlosGines/netbout/teams","hooks_url":"https://api.github.com/repos/CarlosGines/netbout/hooks","issue_events_url":"https://api.github.com/repos/CarlosGines/netbout/issues/events{/number}","events_url":"https://api.github.com/repos/CarlosGines/netbout/events","assignees_url":"https://api.github.com/repos/CarlosGines/netbout/assignees{/user}","branches_url":"https://api.github.com/repos/CarlosGines/netbout/branches{/branch}","tags_url":"https://api.github.com/repos/CarlosGines/netbout/tags","blobs_url":"https://api.github.com/repos/CarlosGines/netbout/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CarlosGines/netbout/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CarlosGines/netbout/git/refs{/sha}","trees_url":"https://api.github.com/repos/CarlosGines/netbout/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CarlosGines/netbout/statuses/{sha}","languages_url":"https://api.github.com/repos/CarlosGines/netbout/languages","stargazers_url":"https://api.github.com/repos/CarlosGines/netbout/stargazers","contributors_url":"https://api.github.com/repos/CarlosGines/netbout/contributors","subscribers_url":"https://api.github.com/repos/CarlosGines/netbout/subscribers","subscription_url":"https://api.github.com/repos/CarlosGines/netbout/subscription","commits_url":"https://api.github.com/repos/CarlosGines/netbout/commits{/sha}","git_commits_url":"https://api.github.com/repos/CarlosGines/netbout/git/commits{/sha}","comments_url":"https://api.github.com/repos/CarlosGines/netbout/comments{/number}","issue_comment_url":"https://api.github.com/repos/CarlosGines/netbout/issues/comments{/number}","contents_url":"https://api.github.com/repos/CarlosGines/netbout/contents/{+path}","compare_url":"https://api.github.com/repos/CarlosGines/netbout/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CarlosGines/netbout/merges","archive_url":"https://api.github.com/repos/CarlosGines/netbout/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CarlosGines/netbout/downloads","issues_url":"https://api.github.com/repos/CarlosGines/netbout/issues{/number}","pulls_url":"https://api.github.com/repos/CarlosGines/netbout/pulls{/number}","milestones_url":"https://api.github.com/repos/CarlosGines/netbout/milestones{/number}","notifications_url":"https://api.github.com/repos/CarlosGines/netbout/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CarlosGines/netbout/labels{/name}","releases_url":"https://api.github.com/repos/CarlosGines/netbout/releases{/id}","deployments_url":"https://api.github.com/repos/CarlosGines/netbout/deployments","created_at":"2016-03-07T12:47:17Z","updated_at":"2016-03-07T12:47:18Z","pushed_at":"2016-03-08T03:13:05Z","git_url":"git://github.com/CarlosGines/netbout.git","ssh_url":"git@github.com:CarlosGines/netbout.git","clone_url":"https://github.com/CarlosGines/netbout.git","svn_url":"https://github.com/CarlosGines/netbout","homepage":"www.netbout.com","size":18245,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"yegor256:master","ref":"master","sha":"37f66491c31995522d17576ad223d69306f18d22","user":{"login":"yegor256","id":526301,"avatar_url":"https://avatars.githubusercontent.com/u/526301?v=3","gravatar_id":"","url":"https://api.github.com/users/yegor256","html_url":"https://github.com/yegor256","followers_url":"https://api.github.com/users/yegor256/followers","following_url":"https://api.github.com/users/yegor256/following{/other_user}","gists_url":"https://api.github.com/users/yegor256/gists{/gist_id}","starred_url":"https://api.github.com/users/yegor256/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yegor256/subscriptions","organizations_url":"https://api.github.com/users/yegor256/orgs","repos_url":"https://api.github.com/users/yegor256/repos","events_url":"https://api.github.com/users/yegor256/events{/privacy}","received_events_url":"https://api.github.com/users/yegor256/received_events","type":"User","site_admin":false},"repo":{"id":9580819,"name":"netbout","full_name":"yegor256/netbout","owner":{"login":"yegor256","id":526301,"avatar_url":"https://avatars.githubusercontent.com/u/526301?v=3","gravatar_id":"","url":"https://api.github.com/users/yegor256","html_url":"https://github.com/yegor256","followers_url":"https://api.github.com/users/yegor256/followers","following_url":"https://api.github.com/users/yegor256/following{/other_user}","gists_url":"https://api.github.com/users/yegor256/gists{/gist_id}","starred_url":"https://api.github.com/users/yegor256/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yegor256/subscriptions","organizations_url":"https://api.github.com/users/yegor256/orgs","repos_url":"https://api.github.com/users/yegor256/repos","events_url":"https://api.github.com/users/yegor256/events{/privacy}","received_events_url":"https://api.github.com/users/yegor256/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/yegor256/netbout","description":"Private talks made easy","fork":false,"url":"https://api.github.com/repos/yegor256/netbout","forks_url":"https://api.github.com/repos/yegor256/netbout/forks","keys_url":"https://api.github.com/repos/yegor256/netbout/keys{/key_id}","collaborators_url":"https://api.github.com/repos/yegor256/netbout/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/yegor256/netbout/teams","hooks_url":"https://api.github.com/repos/yegor256/netbout/hooks","issue_events_url":"https://api.github.com/repos/yegor256/netbout/issues/events{/number}","events_url":"https://api.github.com/repos/yegor256/netbout/events","assignees_url":"https://api.github.com/repos/yegor256/netbout/assignees{/user}","branches_url":"https://api.github.com/repos/yegor256/netbout/branches{/branch}","tags_url":"https://api.github.com/repos/yegor256/netbout/tags","blobs_url":"https://api.github.com/repos/yegor256/netbout/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/yegor256/netbout/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/yegor256/netbout/git/refs{/sha}","trees_url":"https://api.github.com/repos/yegor256/netbout/git/trees{/sha}","statuses_url":"https://api.github.com/repos/yegor256/netbout/statuses/{sha}","languages_url":"https://api.github.com/repos/yegor256/netbout/languages","stargazers_url":"https://api.github.com/repos/yegor256/netbout/stargazers","contributors_url":"https://api.github.com/repos/yegor256/netbout/contributors","subscribers_url":"https://api.github.com/repos/yegor256/netbout/subscribers","subscription_url":"https://api.github.com/repos/yegor256/netbout/subscription","commits_url":"https://api.github.com/repos/yegor256/netbout/commits{/sha}","git_commits_url":"https://api.github.com/repos/yegor256/netbout/git/commits{/sha}","comments_url":"https://api.github.com/repos/yegor256/netbout/comments{/number}","issue_comment_url":"https://api.github.com/repos/yegor256/netbout/issues/comments{/number}","contents_url":"https://api.github.com/repos/yegor256/netbout/contents/{+path}","compare_url":"https://api.github.com/repos/yegor256/netbout/compare/{base}...{head}","merges_url":"https://api.github.com/repos/yegor256/netbout/merges","archive_url":"https://api.github.com/repos/yegor256/netbout/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/yegor256/netbout/downloads","issues_url":"https://api.github.com/repos/yegor256/netbout/issues{/number}","pulls_url":"https://api.github.com/repos/yegor256/netbout/pulls{/number}","milestones_url":"https://api.github.com/repos/yegor256/netbout/milestones{/number}","notifications_url":"https://api.github.com/repos/yegor256/netbout/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/yegor256/netbout/labels{/name}","releases_url":"https://api.github.com/repos/yegor256/netbout/releases{/id}","deployments_url":"https://api.github.com/repos/yegor256/netbout/deployments","created_at":"2013-04-21T14:49:21Z","updated_at":"2016-02-28T14:14:11Z","pushed_at":"2016-03-08T03:13:06Z","git_url":"git://github.com/yegor256/netbout.git","ssh_url":"git@github.com:yegor256/netbout.git","clone_url":"https://github.com/yegor256/netbout.git","svn_url":"https://github.com/yegor256/netbout","homepage":"www.netbout.com","size":18271,"stargazers_count":28,"watchers_count":28,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":32,"mirror_url":null,"open_issues_count":92,"forks":32,"open_issues":92,"watchers":28,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/1078"},"html":{"href":"https://github.com/yegor256/netbout/pull/1078"},"issue":{"href":"https://api.github.com/repos/yegor256/netbout/issues/1078"},"comments":{"href":"https://api.github.com/repos/yegor256/netbout/issues/1078/comments"},"review_comments":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/1078/comments"},"review_comment":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/yegor256/netbout/pulls/1078/commits"},"statuses":{"href":"https://api.github.com/repos/yegor256/netbout/statuses/fffab30dbd52aff797be239ee98bd610c54a3618"}}}}