{"action":"created","comment":{"url":"https://api.github.com/repos/dcos/cosmos/pulls/comments/83108318","pull_request_review_id":3971227,"id":83108318,"diff_hunk":"@@ -0,0 +1,42 @@\n+package com.mesosphere.cosmos.storage\n+\n+import java.io.InputStream\n+\n+import com.netaporter.uri.Uri\n+import com.twitter.io.Reader\n+import com.twitter.util.Future\n+\n+import com.mesosphere.cosmos.http.MediaType\n+\n+trait ObjectStorage {","path":"cosmos-server/src/main/scala/com/mesosphere/cosmos/storage/ObjectStorage.scala","position":11,"original_position":11,"commit_id":"465489a1ee1158194fb8cd073c29ca69075aaf7e","original_commit_id":"465489a1ee1158194fb8cd073c29ca69075aaf7e","user":{"login":"cruhland","id":1936682,"avatar_url":"https://avatars.githubusercontent.com/u/1936682?v=3","gravatar_id":"","url":"https://api.github.com/users/cruhland","html_url":"https://github.com/cruhland","followers_url":"https://api.github.com/users/cruhland/followers","following_url":"https://api.github.com/users/cruhland/following{/other_user}","gists_url":"https://api.github.com/users/cruhland/gists{/gist_id}","starred_url":"https://api.github.com/users/cruhland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cruhland/subscriptions","organizations_url":"https://api.github.com/users/cruhland/orgs","repos_url":"https://api.github.com/users/cruhland/repos","events_url":"https://api.github.com/users/cruhland/events{/privacy}","received_events_url":"https://api.github.com/users/cruhland/received_events","type":"User","site_admin":false},"body":"Could you add a short comment here explaining what this trait is for, i.e. why does it exist?\r\n\r\nAlso write a comment for each method so that we know what the expectations are when writing another implementation of this trait. For example, the comment for `list` could explain that it is only supposed to list things in the first level of the directory.","created_at":"2016-10-12T22:00:45Z","updated_at":"2016-10-12T22:00:45Z","html_url":"https://github.com/dcos/cosmos/pull/517#discussion_r83108318","pull_request_url":"https://api.github.com/repos/dcos/cosmos/pulls/517","_links":{"self":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/comments/83108318"},"html":{"href":"https://github.com/dcos/cosmos/pull/517#discussion_r83108318"},"pull_request":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/517"}}},"pull_request":{"url":"https://api.github.com/repos/dcos/cosmos/pulls/517","id":88887786,"html_url":"https://github.com/dcos/cosmos/pull/517","diff_url":"https://github.com/dcos/cosmos/pull/517.diff","patch_url":"https://github.com/dcos/cosmos/pull/517.patch","issue_url":"https://api.github.com/repos/dcos/cosmos/issues/517","number":517,"state":"open","locked":false,"title":"Object Storage","user":{"login":"jsancio","id":794394,"avatar_url":"https://avatars.githubusercontent.com/u/794394?v=3","gravatar_id":"","url":"https://api.github.com/users/jsancio","html_url":"https://github.com/jsancio","followers_url":"https://api.github.com/users/jsancio/followers","following_url":"https://api.github.com/users/jsancio/following{/other_user}","gists_url":"https://api.github.com/users/jsancio/gists{/gist_id}","starred_url":"https://api.github.com/users/jsancio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsancio/subscriptions","organizations_url":"https://api.github.com/users/jsancio/orgs","repos_url":"https://api.github.com/users/jsancio/repos","events_url":"https://api.github.com/users/jsancio/events{/privacy}","received_events_url":"https://api.github.com/users/jsancio/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-10-11T18:43:32Z","updated_at":"2016-10-12T22:00:45Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8b997263f956c04090759906b1a301ce3ab5bdba","assignee":{"login":"cruhland","id":1936682,"avatar_url":"https://avatars.githubusercontent.com/u/1936682?v=3","gravatar_id":"","url":"https://api.github.com/users/cruhland","html_url":"https://github.com/cruhland","followers_url":"https://api.github.com/users/cruhland/followers","following_url":"https://api.github.com/users/cruhland/following{/other_user}","gists_url":"https://api.github.com/users/cruhland/gists{/gist_id}","starred_url":"https://api.github.com/users/cruhland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cruhland/subscriptions","organizations_url":"https://api.github.com/users/cruhland/orgs","repos_url":"https://api.github.com/users/cruhland/repos","events_url":"https://api.github.com/users/cruhland/events{/privacy}","received_events_url":"https://api.github.com/users/cruhland/received_events","type":"User","site_admin":false},"assignees":[{"login":"cruhland","id":1936682,"avatar_url":"https://avatars.githubusercontent.com/u/1936682?v=3","gravatar_id":"","url":"https://api.github.com/users/cruhland","html_url":"https://github.com/cruhland","followers_url":"https://api.github.com/users/cruhland/followers","following_url":"https://api.github.com/users/cruhland/following{/other_user}","gists_url":"https://api.github.com/users/cruhland/gists{/gist_id}","starred_url":"https://api.github.com/users/cruhland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cruhland/subscriptions","organizations_url":"https://api.github.com/users/cruhland/orgs","repos_url":"https://api.github.com/users/cruhland/repos","events_url":"https://api.github.com/users/cruhland/events{/privacy}","received_events_url":"https://api.github.com/users/cruhland/received_events","type":"User","site_admin":false},{"login":"larioj","id":9968087,"avatar_url":"https://avatars.githubusercontent.com/u/9968087?v=3","gravatar_id":"","url":"https://api.github.com/users/larioj","html_url":"https://github.com/larioj","followers_url":"https://api.github.com/users/larioj/followers","following_url":"https://api.github.com/users/larioj/following{/other_user}","gists_url":"https://api.github.com/users/larioj/gists{/gist_id}","starred_url":"https://api.github.com/users/larioj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/larioj/subscriptions","organizations_url":"https://api.github.com/users/larioj/orgs","repos_url":"https://api.github.com/users/larioj/repos","events_url":"https://api.github.com/users/larioj/events{/privacy}","received_events_url":"https://api.github.com/users/larioj/received_events","type":"User","site_admin":false}],"milestone":null,"commits_url":"https://api.github.com/repos/dcos/cosmos/pulls/517/commits","review_comments_url":"https://api.github.com/repos/dcos/cosmos/pulls/517/comments","review_comment_url":"https://api.github.com/repos/dcos/cosmos/pulls/comments{/number}","comments_url":"https://api.github.com/repos/dcos/cosmos/issues/517/comments","statuses_url":"https://api.github.com/repos/dcos/cosmos/statuses/465489a1ee1158194fb8cd073c29ca69075aaf7e","head":{"label":"dcos:s3-storage","ref":"s3-storage","sha":"465489a1ee1158194fb8cd073c29ca69075aaf7e","user":{"login":"dcos","id":17648048,"avatar_url":"https://avatars.githubusercontent.com/u/17648048?v=3","gravatar_id":"","url":"https://api.github.com/users/dcos","html_url":"https://github.com/dcos","followers_url":"https://api.github.com/users/dcos/followers","following_url":"https://api.github.com/users/dcos/following{/other_user}","gists_url":"https://api.github.com/users/dcos/gists{/gist_id}","starred_url":"https://api.github.com/users/dcos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcos/subscriptions","organizations_url":"https://api.github.com/users/dcos/orgs","repos_url":"https://api.github.com/users/dcos/repos","events_url":"https://api.github.com/users/dcos/events{/privacy}","received_events_url":"https://api.github.com/users/dcos/received_events","type":"Organization","site_admin":false},"repo":{"id":47585661,"name":"cosmos","full_name":"dcos/cosmos","owner":{"login":"dcos","id":17648048,"avatar_url":"https://avatars.githubusercontent.com/u/17648048?v=3","gravatar_id":"","url":"https://api.github.com/users/dcos","html_url":"https://github.com/dcos","followers_url":"https://api.github.com/users/dcos/followers","following_url":"https://api.github.com/users/dcos/following{/other_user}","gists_url":"https://api.github.com/users/dcos/gists{/gist_id}","starred_url":"https://api.github.com/users/dcos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcos/subscriptions","organizations_url":"https://api.github.com/users/dcos/orgs","repos_url":"https://api.github.com/users/dcos/repos","events_url":"https://api.github.com/users/dcos/events{/privacy}","received_events_url":"https://api.github.com/users/dcos/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/dcos/cosmos","description":"An orderly, harmonious, complete system for DC/OS - package management","fork":false,"url":"https://api.github.com/repos/dcos/cosmos","forks_url":"https://api.github.com/repos/dcos/cosmos/forks","keys_url":"https://api.github.com/repos/dcos/cosmos/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dcos/cosmos/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dcos/cosmos/teams","hooks_url":"https://api.github.com/repos/dcos/cosmos/hooks","issue_events_url":"https://api.github.com/repos/dcos/cosmos/issues/events{/number}","events_url":"https://api.github.com/repos/dcos/cosmos/events","assignees_url":"https://api.github.com/repos/dcos/cosmos/assignees{/user}","branches_url":"https://api.github.com/repos/dcos/cosmos/branches{/branch}","tags_url":"https://api.github.com/repos/dcos/cosmos/tags","blobs_url":"https://api.github.com/repos/dcos/cosmos/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dcos/cosmos/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dcos/cosmos/git/refs{/sha}","trees_url":"https://api.github.com/repos/dcos/cosmos/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dcos/cosmos/statuses/{sha}","languages_url":"https://api.github.com/repos/dcos/cosmos/languages","stargazers_url":"https://api.github.com/repos/dcos/cosmos/stargazers","contributors_url":"https://api.github.com/repos/dcos/cosmos/contributors","subscribers_url":"https://api.github.com/repos/dcos/cosmos/subscribers","subscription_url":"https://api.github.com/repos/dcos/cosmos/subscription","commits_url":"https://api.github.com/repos/dcos/cosmos/commits{/sha}","git_commits_url":"https://api.github.com/repos/dcos/cosmos/git/commits{/sha}","comments_url":"https://api.github.com/repos/dcos/cosmos/comments{/number}","issue_comment_url":"https://api.github.com/repos/dcos/cosmos/issues/comments{/number}","contents_url":"https://api.github.com/repos/dcos/cosmos/contents/{+path}","compare_url":"https://api.github.com/repos/dcos/cosmos/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dcos/cosmos/merges","archive_url":"https://api.github.com/repos/dcos/cosmos/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dcos/cosmos/downloads","issues_url":"https://api.github.com/repos/dcos/cosmos/issues{/number}","pulls_url":"https://api.github.com/repos/dcos/cosmos/pulls{/number}","milestones_url":"https://api.github.com/repos/dcos/cosmos/milestones{/number}","notifications_url":"https://api.github.com/repos/dcos/cosmos/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dcos/cosmos/labels{/name}","releases_url":"https://api.github.com/repos/dcos/cosmos/releases{/id}","deployments_url":"https://api.github.com/repos/dcos/cosmos/deployments","created_at":"2015-12-07T23:23:49Z","updated_at":"2016-10-05T12:37:10Z","pushed_at":"2016-10-12T21:54:30Z","git_url":"git://github.com/dcos/cosmos.git","ssh_url":"git@github.com:dcos/cosmos.git","clone_url":"https://github.com/dcos/cosmos.git","svn_url":"https://github.com/dcos/cosmos","homepage":"","size":1400,"stargazers_count":36,"watchers_count":36,"language":"Scala","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":4,"forks":14,"open_issues":4,"watchers":36,"default_branch":"master"}},"base":{"label":"dcos:distributed-publish","ref":"distributed-publish","sha":"42e1a2621af8deacca7138fba778bc93eb51d8cf","user":{"login":"dcos","id":17648048,"avatar_url":"https://avatars.githubusercontent.com/u/17648048?v=3","gravatar_id":"","url":"https://api.github.com/users/dcos","html_url":"https://github.com/dcos","followers_url":"https://api.github.com/users/dcos/followers","following_url":"https://api.github.com/users/dcos/following{/other_user}","gists_url":"https://api.github.com/users/dcos/gists{/gist_id}","starred_url":"https://api.github.com/users/dcos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcos/subscriptions","organizations_url":"https://api.github.com/users/dcos/orgs","repos_url":"https://api.github.com/users/dcos/repos","events_url":"https://api.github.com/users/dcos/events{/privacy}","received_events_url":"https://api.github.com/users/dcos/received_events","type":"Organization","site_admin":false},"repo":{"id":47585661,"name":"cosmos","full_name":"dcos/cosmos","owner":{"login":"dcos","id":17648048,"avatar_url":"https://avatars.githubusercontent.com/u/17648048?v=3","gravatar_id":"","url":"https://api.github.com/users/dcos","html_url":"https://github.com/dcos","followers_url":"https://api.github.com/users/dcos/followers","following_url":"https://api.github.com/users/dcos/following{/other_user}","gists_url":"https://api.github.com/users/dcos/gists{/gist_id}","starred_url":"https://api.github.com/users/dcos/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dcos/subscriptions","organizations_url":"https://api.github.com/users/dcos/orgs","repos_url":"https://api.github.com/users/dcos/repos","events_url":"https://api.github.com/users/dcos/events{/privacy}","received_events_url":"https://api.github.com/users/dcos/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/dcos/cosmos","description":"An orderly, harmonious, complete system for DC/OS - package management","fork":false,"url":"https://api.github.com/repos/dcos/cosmos","forks_url":"https://api.github.com/repos/dcos/cosmos/forks","keys_url":"https://api.github.com/repos/dcos/cosmos/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dcos/cosmos/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dcos/cosmos/teams","hooks_url":"https://api.github.com/repos/dcos/cosmos/hooks","issue_events_url":"https://api.github.com/repos/dcos/cosmos/issues/events{/number}","events_url":"https://api.github.com/repos/dcos/cosmos/events","assignees_url":"https://api.github.com/repos/dcos/cosmos/assignees{/user}","branches_url":"https://api.github.com/repos/dcos/cosmos/branches{/branch}","tags_url":"https://api.github.com/repos/dcos/cosmos/tags","blobs_url":"https://api.github.com/repos/dcos/cosmos/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dcos/cosmos/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dcos/cosmos/git/refs{/sha}","trees_url":"https://api.github.com/repos/dcos/cosmos/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dcos/cosmos/statuses/{sha}","languages_url":"https://api.github.com/repos/dcos/cosmos/languages","stargazers_url":"https://api.github.com/repos/dcos/cosmos/stargazers","contributors_url":"https://api.github.com/repos/dcos/cosmos/contributors","subscribers_url":"https://api.github.com/repos/dcos/cosmos/subscribers","subscription_url":"https://api.github.com/repos/dcos/cosmos/subscription","commits_url":"https://api.github.com/repos/dcos/cosmos/commits{/sha}","git_commits_url":"https://api.github.com/repos/dcos/cosmos/git/commits{/sha}","comments_url":"https://api.github.com/repos/dcos/cosmos/comments{/number}","issue_comment_url":"https://api.github.com/repos/dcos/cosmos/issues/comments{/number}","contents_url":"https://api.github.com/repos/dcos/cosmos/contents/{+path}","compare_url":"https://api.github.com/repos/dcos/cosmos/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dcos/cosmos/merges","archive_url":"https://api.github.com/repos/dcos/cosmos/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dcos/cosmos/downloads","issues_url":"https://api.github.com/repos/dcos/cosmos/issues{/number}","pulls_url":"https://api.github.com/repos/dcos/cosmos/pulls{/number}","milestones_url":"https://api.github.com/repos/dcos/cosmos/milestones{/number}","notifications_url":"https://api.github.com/repos/dcos/cosmos/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dcos/cosmos/labels{/name}","releases_url":"https://api.github.com/repos/dcos/cosmos/releases{/id}","deployments_url":"https://api.github.com/repos/dcos/cosmos/deployments","created_at":"2015-12-07T23:23:49Z","updated_at":"2016-10-05T12:37:10Z","pushed_at":"2016-10-12T21:54:30Z","git_url":"git://github.com/dcos/cosmos.git","ssh_url":"git@github.com:dcos/cosmos.git","clone_url":"https://github.com/dcos/cosmos.git","svn_url":"https://github.com/dcos/cosmos","homepage":"","size":1400,"stargazers_count":36,"watchers_count":36,"language":"Scala","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":14,"mirror_url":null,"open_issues_count":4,"forks":14,"open_issues":4,"watchers":36,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/517"},"html":{"href":"https://github.com/dcos/cosmos/pull/517"},"issue":{"href":"https://api.github.com/repos/dcos/cosmos/issues/517"},"comments":{"href":"https://api.github.com/repos/dcos/cosmos/issues/517/comments"},"review_comments":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/517/comments"},"review_comment":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/dcos/cosmos/pulls/517/commits"},"statuses":{"href":"https://api.github.com/repos/dcos/cosmos/statuses/465489a1ee1158194fb8cd073c29ca69075aaf7e"}}}}
{"actor":{"display_login":"cruhland"}}