{"action":"created","comment":{"url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/comments/50539931","id":50539931,"diff_hunk":"@@ -0,0 +1,55 @@\n+/**\n+ * The MIT License\n+ * Copyright (c) 2010 JmxTrans team\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\n+ * all 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\n+ * THE SOFTWARE.\n+ */\n+package com.googlecode.jmxtrans.model.output;\n+\n+import com.googlecode.jmxtrans.model.Query;\n+import com.googlecode.jmxtrans.model.Result;\n+import com.googlecode.jmxtrans.model.Server;\n+import com.googlecode.jmxtrans.model.output.support.WriterBasedOutputWriter;\n+import com.googlecode.jmxtrans.model.output.support.opentsdb.OpenTSDBMessageFormatter;\n+import org.slf4j.Logger;\n+import org.slf4j.LoggerFactory;\n+\n+import javax.annotation.Nonnull;\n+import java.io.IOException;\n+import java.io.Writer;\n+\n+public class OpenTSDBWriter2 implements WriterBasedOutputWriter {","path":"jmxtrans-output/jmxtrans-output-core/src/main/java/com/googlecode/jmxtrans/model/output/OpenTSDBWriter2.java","position":37,"original_position":37,"commit_id":"815b88b80c45de3dcc3b2f5cfa951f546b5cba6e","original_commit_id":"815b88b80c45de3dcc3b2f5cfa951f546b5cba6e","user":{"login":"gehel","id":1415765,"avatar_url":"https://avatars.githubusercontent.com/u/1415765?v=3","gravatar_id":"","url":"https://api.github.com/users/gehel","html_url":"https://github.com/gehel","followers_url":"https://api.github.com/users/gehel/followers","following_url":"https://api.github.com/users/gehel/following{/other_user}","gists_url":"https://api.github.com/users/gehel/gists{/gist_id}","starred_url":"https://api.github.com/users/gehel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gehel/subscriptions","organizations_url":"https://api.github.com/users/gehel/orgs","repos_url":"https://api.github.com/users/gehel/repos","events_url":"https://api.github.com/users/gehel/events{/privacy}","received_events_url":"https://api.github.com/users/gehel/received_events","type":"User","site_admin":false},"body":"This class could be annotated with `@Threadsafe` (JSR 305)","created_at":"2016-01-22T14:10:10Z","updated_at":"2016-01-22T14:10:10Z","html_url":"https://github.com/jmxtrans/jmxtrans/pull/413#discussion_r50539931","pull_request_url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413","_links":{"self":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/comments/50539931"},"html":{"href":"https://github.com/jmxtrans/jmxtrans/pull/413#discussion_r50539931"},"pull_request":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413"}}},"pull_request":{"url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413","id":56885812,"html_url":"https://github.com/jmxtrans/jmxtrans/pull/413","diff_url":"https://github.com/jmxtrans/jmxtrans/pull/413.diff","patch_url":"https://github.com/jmxtrans/jmxtrans/pull/413.patch","issue_url":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/413","number":413,"state":"open","locked":false,"title":"use standard tcp and udp writer for OpenTSDB","user":{"login":"AlbanSeurat","id":500180,"avatar_url":"https://avatars.githubusercontent.com/u/500180?v=3","gravatar_id":"","url":"https://api.github.com/users/AlbanSeurat","html_url":"https://github.com/AlbanSeurat","followers_url":"https://api.github.com/users/AlbanSeurat/followers","following_url":"https://api.github.com/users/AlbanSeurat/following{/other_user}","gists_url":"https://api.github.com/users/AlbanSeurat/gists{/gist_id}","starred_url":"https://api.github.com/users/AlbanSeurat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AlbanSeurat/subscriptions","organizations_url":"https://api.github.com/users/AlbanSeurat/orgs","repos_url":"https://api.github.com/users/AlbanSeurat/repos","events_url":"https://api.github.com/users/AlbanSeurat/events{/privacy}","received_events_url":"https://api.github.com/users/AlbanSeurat/received_events","type":"User","site_admin":false},"body":"<a href='#crh-start'></a><a href='#crh-data-%7B%22processed%22%3A%20%5B%22https%3A//github.com/jmxtrans/jmxtrans/pull/413%23discussion_r50539851%22%5D%2C%20%22comments%22%3A%20%7B%22Pull%20815b88b80c45de3dcc3b2f5cfa951f546b5cba6e%20jmxtrans-output/jmxtrans-output-core/src/main/java/com/googlecode/jmxtrans/model/output/OpenTSDBWriter2.java%2040%22%3A%20%7B%22html_url%22%3A%20%22https%3A//github.com/jmxtrans/jmxtrans/pull/413%23discussion_r50539851%22%2C%20%22comments%22%3A%20%5B%7B%22body%22%3A%20%22%60messageFormatter%60%20could%20be%20%60final%60%20%28sorry%2C%20one%20of%20my%20pet%20peeve%29%22%2C%20%22created_at%22%3A%20%222016-01-22T14%3A09%3A30Z%22%2C%20%22user%22%3A%20%7B%22avatar_url%22%3A%20%22https%3A//avatars.githubusercontent.com/u/1415765%3Fv%3D3%22%2C%20%22html_url%22%3A%20%22https%3A//github.com/gehel%22%7D%7D%5D%2C%20%22title%22%3A%20%22File%3A%20jmxtrans-output/jmxtrans-output-core/src/main/java/com/googlecode/jmxtrans/model/output/OpenTSDBWriter2.java%3AL1-56%22%7D%7D%7D'></a>\n<a href='https://www.codereviewhub.com/'><img src='http://www.codereviewhub.com/site/github-bar.png' height=40></a>\n- [ ] <a href='#crh-comment-Pull 815b88b80c45de3dcc3b2f5cfa951f546b5cba6e jmxtrans-output/jmxtrans-output-core/src/main/java/com/googlecode/jmxtrans/model/output/OpenTSDBWriter2.java 40'></a> <img src='http://www.codereviewhub.com/site/github-remaining.png' height=16 width=60>&nbsp;<b><a href='https://github.com/jmxtrans/jmxtrans/pull/413#discussion_r50539851'>File: jmxtrans-output/jmxtrans-output-core/src/main/java/com/googlecode/jmxtrans/model/output/OpenTSDBWriter2.java:L1-56</a></b>\n- <a href='https://github.com/gehel'><img border=0 src='https://avatars.githubusercontent.com/u/1415765?v=3' height=16 width=16'></a> `messageFormatter` could be `final` (sorry, one of my pet peeve)\n\n\n<a href='https://www.codereviewhub.com/jmxtrans/jmxtrans/pull/413?mark_as_completed=1'><img src='http://www.codereviewhub.com/site/github-mark-as-completed.png' height=26></a>&nbsp;<a href='https://www.codereviewhub.com/jmxtrans/jmxtrans/pull/413?approve=1'><img src='http://www.codereviewhub.com/site/github-approve.png' height=26></a>&nbsp;<a href='https://github.com/jmxtrans/jmxtrans/pull/413'><img src='http://www.codereviewhub.com/site/github-refresh.png' height=26></a>\n<a href='#crh-end'></a>","created_at":"2016-01-22T13:13:48Z","updated_at":"2016-01-22T14:10:10Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f02d7cabbda7498080b3e4ba63170daabda81e07","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413/commits","review_comments_url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413/comments","review_comment_url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/comments{/number}","comments_url":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/413/comments","statuses_url":"https://api.github.com/repos/jmxtrans/jmxtrans/statuses/815b88b80c45de3dcc3b2f5cfa951f546b5cba6e","head":{"label":"AlbanSeurat:feature/use_tcp_output_writer_for_open_tsdb","ref":"feature/use_tcp_output_writer_for_open_tsdb","sha":"815b88b80c45de3dcc3b2f5cfa951f546b5cba6e","user":{"login":"AlbanSeurat","id":500180,"avatar_url":"https://avatars.githubusercontent.com/u/500180?v=3","gravatar_id":"","url":"https://api.github.com/users/AlbanSeurat","html_url":"https://github.com/AlbanSeurat","followers_url":"https://api.github.com/users/AlbanSeurat/followers","following_url":"https://api.github.com/users/AlbanSeurat/following{/other_user}","gists_url":"https://api.github.com/users/AlbanSeurat/gists{/gist_id}","starred_url":"https://api.github.com/users/AlbanSeurat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AlbanSeurat/subscriptions","organizations_url":"https://api.github.com/users/AlbanSeurat/orgs","repos_url":"https://api.github.com/users/AlbanSeurat/repos","events_url":"https://api.github.com/users/AlbanSeurat/events{/privacy}","received_events_url":"https://api.github.com/users/AlbanSeurat/received_events","type":"User","site_admin":false},"repo":{"id":49265204,"name":"jmxtrans","full_name":"AlbanSeurat/jmxtrans","owner":{"login":"AlbanSeurat","id":500180,"avatar_url":"https://avatars.githubusercontent.com/u/500180?v=3","gravatar_id":"","url":"https://api.github.com/users/AlbanSeurat","html_url":"https://github.com/AlbanSeurat","followers_url":"https://api.github.com/users/AlbanSeurat/followers","following_url":"https://api.github.com/users/AlbanSeurat/following{/other_user}","gists_url":"https://api.github.com/users/AlbanSeurat/gists{/gist_id}","starred_url":"https://api.github.com/users/AlbanSeurat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AlbanSeurat/subscriptions","organizations_url":"https://api.github.com/users/AlbanSeurat/orgs","repos_url":"https://api.github.com/users/AlbanSeurat/repos","events_url":"https://api.github.com/users/AlbanSeurat/events{/privacy}","received_events_url":"https://api.github.com/users/AlbanSeurat/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/AlbanSeurat/jmxtrans","description":"jmxtrans","fork":true,"url":"https://api.github.com/repos/AlbanSeurat/jmxtrans","forks_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/forks","keys_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/keys{/key_id}","collaborators_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/teams","hooks_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/hooks","issue_events_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/issues/events{/number}","events_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/events","assignees_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/assignees{/user}","branches_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/branches{/branch}","tags_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/tags","blobs_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/git/refs{/sha}","trees_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/git/trees{/sha}","statuses_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/statuses/{sha}","languages_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/languages","stargazers_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/stargazers","contributors_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/contributors","subscribers_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/subscribers","subscription_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/subscription","commits_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/commits{/sha}","git_commits_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/git/commits{/sha}","comments_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/comments{/number}","issue_comment_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/issues/comments{/number}","contents_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/contents/{+path}","compare_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/compare/{base}...{head}","merges_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/merges","archive_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/downloads","issues_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/issues{/number}","pulls_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/pulls{/number}","milestones_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/milestones{/number}","notifications_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/labels{/name}","releases_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/releases{/id}","deployments_url":"https://api.github.com/repos/AlbanSeurat/jmxtrans/deployments","created_at":"2016-01-08T10:12:39Z","updated_at":"2016-01-20T08:45:13Z","pushed_at":"2016-01-22T13:13:12Z","git_url":"git://github.com/AlbanSeurat/jmxtrans.git","ssh_url":"git@github.com:AlbanSeurat/jmxtrans.git","clone_url":"https://github.com/AlbanSeurat/jmxtrans.git","svn_url":"https://github.com/AlbanSeurat/jmxtrans","homepage":"","size":32472,"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":"jmxtrans:master","ref":"master","sha":"91e75fe20877f8975e96f8e3f015dd22c3343357","user":{"login":"jmxtrans","id":3198433,"avatar_url":"https://avatars.githubusercontent.com/u/3198433?v=3","gravatar_id":"","url":"https://api.github.com/users/jmxtrans","html_url":"https://github.com/jmxtrans","followers_url":"https://api.github.com/users/jmxtrans/followers","following_url":"https://api.github.com/users/jmxtrans/following{/other_user}","gists_url":"https://api.github.com/users/jmxtrans/gists{/gist_id}","starred_url":"https://api.github.com/users/jmxtrans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmxtrans/subscriptions","organizations_url":"https://api.github.com/users/jmxtrans/orgs","repos_url":"https://api.github.com/users/jmxtrans/repos","events_url":"https://api.github.com/users/jmxtrans/events{/privacy}","received_events_url":"https://api.github.com/users/jmxtrans/received_events","type":"Organization","site_admin":false},"repo":{"id":2934254,"name":"jmxtrans","full_name":"jmxtrans/jmxtrans","owner":{"login":"jmxtrans","id":3198433,"avatar_url":"https://avatars.githubusercontent.com/u/3198433?v=3","gravatar_id":"","url":"https://api.github.com/users/jmxtrans","html_url":"https://github.com/jmxtrans","followers_url":"https://api.github.com/users/jmxtrans/followers","following_url":"https://api.github.com/users/jmxtrans/following{/other_user}","gists_url":"https://api.github.com/users/jmxtrans/gists{/gist_id}","starred_url":"https://api.github.com/users/jmxtrans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmxtrans/subscriptions","organizations_url":"https://api.github.com/users/jmxtrans/orgs","repos_url":"https://api.github.com/users/jmxtrans/repos","events_url":"https://api.github.com/users/jmxtrans/events{/privacy}","received_events_url":"https://api.github.com/users/jmxtrans/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/jmxtrans/jmxtrans","description":"jmxtrans","fork":false,"url":"https://api.github.com/repos/jmxtrans/jmxtrans","forks_url":"https://api.github.com/repos/jmxtrans/jmxtrans/forks","keys_url":"https://api.github.com/repos/jmxtrans/jmxtrans/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jmxtrans/jmxtrans/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jmxtrans/jmxtrans/teams","hooks_url":"https://api.github.com/repos/jmxtrans/jmxtrans/hooks","issue_events_url":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/events{/number}","events_url":"https://api.github.com/repos/jmxtrans/jmxtrans/events","assignees_url":"https://api.github.com/repos/jmxtrans/jmxtrans/assignees{/user}","branches_url":"https://api.github.com/repos/jmxtrans/jmxtrans/branches{/branch}","tags_url":"https://api.github.com/repos/jmxtrans/jmxtrans/tags","blobs_url":"https://api.github.com/repos/jmxtrans/jmxtrans/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jmxtrans/jmxtrans/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jmxtrans/jmxtrans/git/refs{/sha}","trees_url":"https://api.github.com/repos/jmxtrans/jmxtrans/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jmxtrans/jmxtrans/statuses/{sha}","languages_url":"https://api.github.com/repos/jmxtrans/jmxtrans/languages","stargazers_url":"https://api.github.com/repos/jmxtrans/jmxtrans/stargazers","contributors_url":"https://api.github.com/repos/jmxtrans/jmxtrans/contributors","subscribers_url":"https://api.github.com/repos/jmxtrans/jmxtrans/subscribers","subscription_url":"https://api.github.com/repos/jmxtrans/jmxtrans/subscription","commits_url":"https://api.github.com/repos/jmxtrans/jmxtrans/commits{/sha}","git_commits_url":"https://api.github.com/repos/jmxtrans/jmxtrans/git/commits{/sha}","comments_url":"https://api.github.com/repos/jmxtrans/jmxtrans/comments{/number}","issue_comment_url":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/comments{/number}","contents_url":"https://api.github.com/repos/jmxtrans/jmxtrans/contents/{+path}","compare_url":"https://api.github.com/repos/jmxtrans/jmxtrans/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jmxtrans/jmxtrans/merges","archive_url":"https://api.github.com/repos/jmxtrans/jmxtrans/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jmxtrans/jmxtrans/downloads","issues_url":"https://api.github.com/repos/jmxtrans/jmxtrans/issues{/number}","pulls_url":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls{/number}","milestones_url":"https://api.github.com/repos/jmxtrans/jmxtrans/milestones{/number}","notifications_url":"https://api.github.com/repos/jmxtrans/jmxtrans/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jmxtrans/jmxtrans/labels{/name}","releases_url":"https://api.github.com/repos/jmxtrans/jmxtrans/releases{/id}","deployments_url":"https://api.github.com/repos/jmxtrans/jmxtrans/deployments","created_at":"2011-12-07T17:24:36Z","updated_at":"2016-01-19T10:50:00Z","pushed_at":"2016-01-22T13:13:49Z","git_url":"git://github.com/jmxtrans/jmxtrans.git","ssh_url":"git@github.com:jmxtrans/jmxtrans.git","clone_url":"https://github.com/jmxtrans/jmxtrans.git","svn_url":"https://github.com/jmxtrans/jmxtrans","homepage":"","size":33252,"stargazers_count":836,"watchers_count":836,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":268,"mirror_url":null,"open_issues_count":25,"forks":268,"open_issues":25,"watchers":836,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413"},"html":{"href":"https://github.com/jmxtrans/jmxtrans/pull/413"},"issue":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/413"},"comments":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/issues/413/comments"},"review_comments":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413/comments"},"review_comment":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/pulls/413/commits"},"statuses":{"href":"https://api.github.com/repos/jmxtrans/jmxtrans/statuses/815b88b80c45de3dcc3b2f5cfa951f546b5cba6e"}}}}