{"action":"created","comment":{"url":"https://api.github.com/repos/naver/yobi/pulls/comments/24732927","id":24732927,"diff_hunk":"@@ -0,0 +1,44 @@\n+/**\n+ * Yobi, Project Hosting SW\n+ *\n+ * Copyright 2015 NAVER Corp.\n+ * http://yobi.io\n+ *\n+ * @author Hyeok Oh\n+ *\n+ * Licensed under the Apache License, Version 2.0 (the \"License\");\n+ * you may not use this file except in compliance with the License.\n+ * You may obtain a copy of the License at\n+ *\n+ *   http://www.apache.org/licenses/LICENSE-2.0\n+ *\n+ * Unless required by applicable law or agreed to in writing, software\n+ * distributed under the License is distributed on an \"AS IS\" BASIS,\n+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+ * See the License for the specific language governing permissions and\n+ * limitations under the License.\n+ */\n+package ssh;\n+\n+import org.apache.sshd.server.Command;\n+import org.apache.sshd.server.CommandFactory;\n+import org.apache.sshd.server.command.UnknownCommand;\n+\n+import controllers.GitApp;\n+\n+public class SshCommandFactory implements CommandFactory {","path":"app/ssh/SshCommandFactory.java","position":29,"original_position":29,"commit_id":"1f1ea7bef18e88625bd154e00f7b5115c3e95637","original_commit_id":"1f1ea7bef18e88625bd154e00f7b5115c3e95637","user":{"login":"npcode","id":1129852,"avatar_url":"https://avatars.githubusercontent.com/u/1129852?v=3","gravatar_id":"","url":"https://api.github.com/users/npcode","html_url":"https://github.com/npcode","followers_url":"https://api.github.com/users/npcode/followers","following_url":"https://api.github.com/users/npcode/following{/other_user}","gists_url":"https://api.github.com/users/npcode/gists{/gist_id}","starred_url":"https://api.github.com/users/npcode/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/npcode/subscriptions","organizations_url":"https://api.github.com/users/npcode/orgs","repos_url":"https://api.github.com/users/npcode/repos","events_url":"https://api.github.com/users/npcode/events{/privacy}","received_events_url":"https://api.github.com/users/npcode/received_events","type":"User","site_admin":false},"body":"ssh 패키지에서만 쓰는 것 같은데 package-private이어도 되지 않나요?","created_at":"2015-02-16T05:55:45Z","updated_at":"2015-02-16T05:55:45Z","html_url":"https://github.com/naver/yobi/pull/858#discussion_r24732927","pull_request_url":"https://api.github.com/repos/naver/yobi/pulls/858","_links":{"self":{"href":"https://api.github.com/repos/naver/yobi/pulls/comments/24732927"},"html":{"href":"https://github.com/naver/yobi/pull/858#discussion_r24732927"},"pull_request":{"href":"https://api.github.com/repos/naver/yobi/pulls/858"}}},"pull_request":{"url":"https://api.github.com/repos/naver/yobi/pulls/858","id":28922741,"html_url":"https://github.com/naver/yobi/pull/858","diff_url":"https://github.com/naver/yobi/pull/858.diff","patch_url":"https://github.com/naver/yobi/pull/858.patch","issue_url":"https://api.github.com/repos/naver/yobi/issues/858","number":858,"state":"open","locked":false,"title":"Ssh기능 추가","user":{"login":"oh4851","id":9246985,"avatar_url":"https://avatars.githubusercontent.com/u/9246985?v=3","gravatar_id":"","url":"https://api.github.com/users/oh4851","html_url":"https://github.com/oh4851","followers_url":"https://api.github.com/users/oh4851/followers","following_url":"https://api.github.com/users/oh4851/following{/other_user}","gists_url":"https://api.github.com/users/oh4851/gists{/gist_id}","starred_url":"https://api.github.com/users/oh4851/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oh4851/subscriptions","organizations_url":"https://api.github.com/users/oh4851/orgs","repos_url":"https://api.github.com/users/oh4851/repos","events_url":"https://api.github.com/users/oh4851/events{/privacy}","received_events_url":"https://api.github.com/users/oh4851/received_events","type":"User","site_admin":false},"body":"@npcode @doortts 다시 보냅니다.\r\n@KOR-Believer\r\n\r\n리뷰해주신 내용 반영한 부분입니다.\r\n- Diagnostic에 sshdaemon을 등록했습니다.\r\n- app/models/ssh에서 ebean.Model을 상속받지 않은 것은 app/sshs로 이동했습니다.\r\n- \"yobi\", 22 -> 상수 처리했습니다.\r\n- exist()메서드 이름 변경 -> findByKey()\r\n- publicKeyAuth의 불필요한 result변수 제거\r\n- 조건문에 포함 한 주석 변경 (if public key exists)\r\n\r\n현재 수정중인 부분입니다.\r\n- DaemonClient, SshServerSession, SshServerSessionFactory에서 실제 필요한 부분은 제한적이어서 새로 작성할 수 있을 것 같습니다.\r\n- SshKey.java를 수정 중입니다.\r\n\r\n__ssh url복사__\r\n![프로젝트 내 ssh url 복사](https://github.com/oh4851/myImages/blob/master/images/projectPage_url.png?raw=true)\r\n__sshkey관리__\r\n![설정창 내 sshkey관리](https://github.com/oh4851/myImages/blob/master/images/settingSsh_manage.PNG?raw=true)","created_at":"2015-02-09T14:09:41Z","updated_at":"2015-02-16T05:55:45Z","closed_at":null,"merged_at":null,"merge_commit_sha":"696f80b9fb8285af71643cfeb1e5375f1c60af26","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/naver/yobi/pulls/858/commits","review_comments_url":"https://api.github.com/repos/naver/yobi/pulls/858/comments","review_comment_url":"https://api.github.com/repos/naver/yobi/pulls/comments/{number}","comments_url":"https://api.github.com/repos/naver/yobi/issues/858/comments","statuses_url":"https://api.github.com/repos/naver/yobi/statuses/1f1ea7bef18e88625bd154e00f7b5115c3e95637","head":{"label":"oh4851:review","ref":"review","sha":"1f1ea7bef18e88625bd154e00f7b5115c3e95637","user":{"login":"oh4851","id":9246985,"avatar_url":"https://avatars.githubusercontent.com/u/9246985?v=3","gravatar_id":"","url":"https://api.github.com/users/oh4851","html_url":"https://github.com/oh4851","followers_url":"https://api.github.com/users/oh4851/followers","following_url":"https://api.github.com/users/oh4851/following{/other_user}","gists_url":"https://api.github.com/users/oh4851/gists{/gist_id}","starred_url":"https://api.github.com/users/oh4851/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oh4851/subscriptions","organizations_url":"https://api.github.com/users/oh4851/orgs","repos_url":"https://api.github.com/users/oh4851/repos","events_url":"https://api.github.com/users/oh4851/events{/privacy}","received_events_url":"https://api.github.com/users/oh4851/received_events","type":"User","site_admin":false},"repo":{"id":30397004,"name":"yobi","full_name":"oh4851/yobi","owner":{"login":"oh4851","id":9246985,"avatar_url":"https://avatars.githubusercontent.com/u/9246985?v=3","gravatar_id":"","url":"https://api.github.com/users/oh4851","html_url":"https://github.com/oh4851","followers_url":"https://api.github.com/users/oh4851/followers","following_url":"https://api.github.com/users/oh4851/following{/other_user}","gists_url":"https://api.github.com/users/oh4851/gists{/gist_id}","starred_url":"https://api.github.com/users/oh4851/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/oh4851/subscriptions","organizations_url":"https://api.github.com/users/oh4851/orgs","repos_url":"https://api.github.com/users/oh4851/repos","events_url":"https://api.github.com/users/oh4851/events{/privacy}","received_events_url":"https://api.github.com/users/oh4851/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/oh4851/yobi","description":"Project hosting software","fork":true,"url":"https://api.github.com/repos/oh4851/yobi","forks_url":"https://api.github.com/repos/oh4851/yobi/forks","keys_url":"https://api.github.com/repos/oh4851/yobi/keys{/key_id}","collaborators_url":"https://api.github.com/repos/oh4851/yobi/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/oh4851/yobi/teams","hooks_url":"https://api.github.com/repos/oh4851/yobi/hooks","issue_events_url":"https://api.github.com/repos/oh4851/yobi/issues/events{/number}","events_url":"https://api.github.com/repos/oh4851/yobi/events","assignees_url":"https://api.github.com/repos/oh4851/yobi/assignees{/user}","branches_url":"https://api.github.com/repos/oh4851/yobi/branches{/branch}","tags_url":"https://api.github.com/repos/oh4851/yobi/tags","blobs_url":"https://api.github.com/repos/oh4851/yobi/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/oh4851/yobi/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/oh4851/yobi/git/refs{/sha}","trees_url":"https://api.github.com/repos/oh4851/yobi/git/trees{/sha}","statuses_url":"https://api.github.com/repos/oh4851/yobi/statuses/{sha}","languages_url":"https://api.github.com/repos/oh4851/yobi/languages","stargazers_url":"https://api.github.com/repos/oh4851/yobi/stargazers","contributors_url":"https://api.github.com/repos/oh4851/yobi/contributors","subscribers_url":"https://api.github.com/repos/oh4851/yobi/subscribers","subscription_url":"https://api.github.com/repos/oh4851/yobi/subscription","commits_url":"https://api.github.com/repos/oh4851/yobi/commits{/sha}","git_commits_url":"https://api.github.com/repos/oh4851/yobi/git/commits{/sha}","comments_url":"https://api.github.com/repos/oh4851/yobi/comments{/number}","issue_comment_url":"https://api.github.com/repos/oh4851/yobi/issues/comments/{number}","contents_url":"https://api.github.com/repos/oh4851/yobi/contents/{+path}","compare_url":"https://api.github.com/repos/oh4851/yobi/compare/{base}...{head}","merges_url":"https://api.github.com/repos/oh4851/yobi/merges","archive_url":"https://api.github.com/repos/oh4851/yobi/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/oh4851/yobi/downloads","issues_url":"https://api.github.com/repos/oh4851/yobi/issues{/number}","pulls_url":"https://api.github.com/repos/oh4851/yobi/pulls{/number}","milestones_url":"https://api.github.com/repos/oh4851/yobi/milestones{/number}","notifications_url":"https://api.github.com/repos/oh4851/yobi/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/oh4851/yobi/labels{/name}","releases_url":"https://api.github.com/repos/oh4851/yobi/releases{/id}","created_at":"2015-02-06T05:36:41Z","updated_at":"2015-02-06T05:36:44Z","pushed_at":"2015-02-16T03:42:46Z","git_url":"git://github.com/oh4851/yobi.git","ssh_url":"git@github.com:oh4851/yobi.git","clone_url":"https://github.com/oh4851/yobi.git","svn_url":"https://github.com/oh4851/yobi","homepage":"","size":24229,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"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":"naver:next","ref":"next","sha":"f798de7a76134461c6c416bb21e13a96a6285557","user":{"login":"naver","id":6589568,"avatar_url":"https://avatars.githubusercontent.com/u/6589568?v=3","gravatar_id":"","url":"https://api.github.com/users/naver","html_url":"https://github.com/naver","followers_url":"https://api.github.com/users/naver/followers","following_url":"https://api.github.com/users/naver/following{/other_user}","gists_url":"https://api.github.com/users/naver/gists{/gist_id}","starred_url":"https://api.github.com/users/naver/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naver/subscriptions","organizations_url":"https://api.github.com/users/naver/orgs","repos_url":"https://api.github.com/users/naver/repos","events_url":"https://api.github.com/users/naver/events{/privacy}","received_events_url":"https://api.github.com/users/naver/received_events","type":"Organization","site_admin":false},"repo":{"id":5490703,"name":"yobi","full_name":"naver/yobi","owner":{"login":"naver","id":6589568,"avatar_url":"https://avatars.githubusercontent.com/u/6589568?v=3","gravatar_id":"","url":"https://api.github.com/users/naver","html_url":"https://github.com/naver","followers_url":"https://api.github.com/users/naver/followers","following_url":"https://api.github.com/users/naver/following{/other_user}","gists_url":"https://api.github.com/users/naver/gists{/gist_id}","starred_url":"https://api.github.com/users/naver/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naver/subscriptions","organizations_url":"https://api.github.com/users/naver/orgs","repos_url":"https://api.github.com/users/naver/repos","events_url":"https://api.github.com/users/naver/events{/privacy}","received_events_url":"https://api.github.com/users/naver/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/naver/yobi","description":"Project hosting software","fork":false,"url":"https://api.github.com/repos/naver/yobi","forks_url":"https://api.github.com/repos/naver/yobi/forks","keys_url":"https://api.github.com/repos/naver/yobi/keys{/key_id}","collaborators_url":"https://api.github.com/repos/naver/yobi/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/naver/yobi/teams","hooks_url":"https://api.github.com/repos/naver/yobi/hooks","issue_events_url":"https://api.github.com/repos/naver/yobi/issues/events{/number}","events_url":"https://api.github.com/repos/naver/yobi/events","assignees_url":"https://api.github.com/repos/naver/yobi/assignees{/user}","branches_url":"https://api.github.com/repos/naver/yobi/branches{/branch}","tags_url":"https://api.github.com/repos/naver/yobi/tags","blobs_url":"https://api.github.com/repos/naver/yobi/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/naver/yobi/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/naver/yobi/git/refs{/sha}","trees_url":"https://api.github.com/repos/naver/yobi/git/trees{/sha}","statuses_url":"https://api.github.com/repos/naver/yobi/statuses/{sha}","languages_url":"https://api.github.com/repos/naver/yobi/languages","stargazers_url":"https://api.github.com/repos/naver/yobi/stargazers","contributors_url":"https://api.github.com/repos/naver/yobi/contributors","subscribers_url":"https://api.github.com/repos/naver/yobi/subscribers","subscription_url":"https://api.github.com/repos/naver/yobi/subscription","commits_url":"https://api.github.com/repos/naver/yobi/commits{/sha}","git_commits_url":"https://api.github.com/repos/naver/yobi/git/commits{/sha}","comments_url":"https://api.github.com/repos/naver/yobi/comments{/number}","issue_comment_url":"https://api.github.com/repos/naver/yobi/issues/comments/{number}","contents_url":"https://api.github.com/repos/naver/yobi/contents/{+path}","compare_url":"https://api.github.com/repos/naver/yobi/compare/{base}...{head}","merges_url":"https://api.github.com/repos/naver/yobi/merges","archive_url":"https://api.github.com/repos/naver/yobi/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/naver/yobi/downloads","issues_url":"https://api.github.com/repos/naver/yobi/issues{/number}","pulls_url":"https://api.github.com/repos/naver/yobi/pulls{/number}","milestones_url":"https://api.github.com/repos/naver/yobi/milestones{/number}","notifications_url":"https://api.github.com/repos/naver/yobi/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/naver/yobi/labels{/name}","releases_url":"https://api.github.com/repos/naver/yobi/releases{/id}","created_at":"2012-08-21T05:09:08Z","updated_at":"2015-02-11T07:56:40Z","pushed_at":"2015-02-12T05:33:08Z","git_url":"git://github.com/naver/yobi.git","ssh_url":"git@github.com:naver/yobi.git","clone_url":"https://github.com/naver/yobi.git","svn_url":"https://github.com/naver/yobi","homepage":"","size":32243,"stargazers_count":292,"watchers_count":292,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":135,"mirror_url":null,"open_issues_count":150,"forks":135,"open_issues":150,"watchers":292,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/naver/yobi/pulls/858"},"html":{"href":"https://github.com/naver/yobi/pull/858"},"issue":{"href":"https://api.github.com/repos/naver/yobi/issues/858"},"comments":{"href":"https://api.github.com/repos/naver/yobi/issues/858/comments"},"review_comments":{"href":"https://api.github.com/repos/naver/yobi/pulls/858/comments"},"review_comment":{"href":"https://api.github.com/repos/naver/yobi/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/naver/yobi/pulls/858/commits"},"statuses":{"href":"https://api.github.com/repos/naver/yobi/statuses/1f1ea7bef18e88625bd154e00f7b5115c3e95637"}}}}