{"action":"created","comment":{"url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/comments/165890719","pull_request_review_id":93894379,"id":165890719,"diff_hunk":"@@ -0,0 +1,65 @@\n+/*\n+ * Copyright (c) 2018, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.\n+ *\n+ * WSO2 Inc. licenses this file to you under the Apache License,\n+ * Version 2.0 (the \"License\"); you may not use this file except\n+ * 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,\n+ * software distributed under the License is distributed on an\n+ * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n+ * KIND, either express or implied. See the License for the\n+ * specific language governing permissions and limitations\n+ * under the License.\n+ */\n+package org.ballerinalang.test.service.http.sample;\n+\n+import org.ballerinalang.test.IntegrationTestCase;\n+import org.ballerinalang.test.context.ServerInstance;\n+import org.ballerinalang.test.util.HttpClientRequest;\n+import org.ballerinalang.test.util.HttpResponse;\n+import org.testng.Assert;\n+import org.testng.annotations.AfterClass;\n+import org.testng.annotations.BeforeClass;\n+import org.testng.annotations.Test;\n+\n+import java.io.File;\n+import java.io.IOException;\n+\n+/**\n+ * Testing the Http headers availability in pass-through scenarios","path":"tests/ballerina-test-integration/src/test/java/org/ballerinalang/test/service/http/sample/HttpHeaderTestCases.java","position":33,"original_position":33,"commit_id":"7631987d618eec9c121d2c81f6222aac5cfd3fde","original_commit_id":"7631987d618eec9c121d2c81f6222aac5cfd3fde","user":{"login":"shafreenAnfar","id":6178058,"avatar_url":"https://avatars0.githubusercontent.com/u/6178058?v=4","gravatar_id":"","url":"https://api.github.com/users/shafreenAnfar","html_url":"https://github.com/shafreenAnfar","followers_url":"https://api.github.com/users/shafreenAnfar/followers","following_url":"https://api.github.com/users/shafreenAnfar/following{/other_user}","gists_url":"https://api.github.com/users/shafreenAnfar/gists{/gist_id}","starred_url":"https://api.github.com/users/shafreenAnfar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shafreenAnfar/subscriptions","organizations_url":"https://api.github.com/users/shafreenAnfar/orgs","repos_url":"https://api.github.com/users/shafreenAnfar/repos","events_url":"https://api.github.com/users/shafreenAnfar/events{/privacy}","received_events_url":"https://api.github.com/users/shafreenAnfar/received_events","type":"User","site_admin":false},"body":"\".\" is missing right ?","created_at":"2018-02-05T06:37:21Z","updated_at":"2018-02-05T06:37:21Z","html_url":"https://github.com/ballerina-lang/ballerina/pull/4520#discussion_r165890719","pull_request_url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/comments/165890719"},"html":{"href":"https://github.com/ballerina-lang/ballerina/pull/4520#discussion_r165890719"},"pull_request":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520"}}},"pull_request":{"url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520","id":166380662,"html_url":"https://github.com/ballerina-lang/ballerina/pull/4520","diff_url":"https://github.com/ballerina-lang/ballerina/pull/4520.diff","patch_url":"https://github.com/ballerina-lang/ballerina/pull/4520.patch","issue_url":"https://api.github.com/repos/ballerina-lang/ballerina/issues/4520","number":4520,"state":"open","locked":false,"title":"Add parseHeaderValue function, refactor header related functions and categorize in/out req/resp unit tests","user":{"login":"chamil321","id":8381003,"avatar_url":"https://avatars3.githubusercontent.com/u/8381003?v=4","gravatar_id":"","url":"https://api.github.com/users/chamil321","html_url":"https://github.com/chamil321","followers_url":"https://api.github.com/users/chamil321/followers","following_url":"https://api.github.com/users/chamil321/following{/other_user}","gists_url":"https://api.github.com/users/chamil321/gists{/gist_id}","starred_url":"https://api.github.com/users/chamil321/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chamil321/subscriptions","organizations_url":"https://api.github.com/users/chamil321/orgs","repos_url":"https://api.github.com/users/chamil321/repos","events_url":"https://api.github.com/users/chamil321/events{/privacy}","received_events_url":"https://api.github.com/users/chamil321/received_events","type":"User","site_admin":false},"body":"PR introduces following changes to Http header related native functions  \r\n- Add native function parseHeaderValue (string headerValue)(string, map). Function returns the value as a string and the params as map of strings.\r\n```\r\nvar value, params = http:parseHeaderValue(\"text/plain; charset=us-ascii\");\r\n\r\nvalue - \"text/plain\"\r\nparams - { \"charset\" : \"us-ascii\" }\r\n```\r\n- Remove header value struct and set header values as a string array against the header key.\r\n- getHeader returns first header value what user has inserted as a string.\r\n- getHeaders returns all headers values against a single header key as a string array.\r\n\r\nCheck following for the clarification. User insert Accept header twice. \r\n```\r\nsetHeader(\"Accept\", \"application/xml, text/xml\");\r\naddHeader(\"Accept\", \"text/plain\");\r\n\r\ngetHeader(\"Accept\") returns \"application/xml, text/xml\" \r\ngetHeaders(\"Accept\") returns [ \"application/xml, text/xml\" , \"text/plain\" ]\r\n```\r\n- PR fixes #4512","created_at":"2018-01-31T21:27:36Z","updated_at":"2018-02-05T06:37:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"83234a53a6d11ff176e7793a56e1f70562a336e9","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"milestone":null,"commits_url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520/commits","review_comments_url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520/comments","review_comment_url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ballerina-lang/ballerina/issues/4520/comments","statuses_url":"https://api.github.com/repos/ballerina-lang/ballerina/statuses/7631987d618eec9c121d2c81f6222aac5cfd3fde","head":{"label":"chamil321:refactor-headers","ref":"refactor-headers","sha":"7631987d618eec9c121d2c81f6222aac5cfd3fde","user":{"login":"chamil321","id":8381003,"avatar_url":"https://avatars3.githubusercontent.com/u/8381003?v=4","gravatar_id":"","url":"https://api.github.com/users/chamil321","html_url":"https://github.com/chamil321","followers_url":"https://api.github.com/users/chamil321/followers","following_url":"https://api.github.com/users/chamil321/following{/other_user}","gists_url":"https://api.github.com/users/chamil321/gists{/gist_id}","starred_url":"https://api.github.com/users/chamil321/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chamil321/subscriptions","organizations_url":"https://api.github.com/users/chamil321/orgs","repos_url":"https://api.github.com/users/chamil321/repos","events_url":"https://api.github.com/users/chamil321/events{/privacy}","received_events_url":"https://api.github.com/users/chamil321/received_events","type":"User","site_admin":false},"repo":{"id":90233065,"name":"ballerina","full_name":"chamil321/ballerina","owner":{"login":"chamil321","id":8381003,"avatar_url":"https://avatars3.githubusercontent.com/u/8381003?v=4","gravatar_id":"","url":"https://api.github.com/users/chamil321","html_url":"https://github.com/chamil321","followers_url":"https://api.github.com/users/chamil321/followers","following_url":"https://api.github.com/users/chamil321/following{/other_user}","gists_url":"https://api.github.com/users/chamil321/gists{/gist_id}","starred_url":"https://api.github.com/users/chamil321/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chamil321/subscriptions","organizations_url":"https://api.github.com/users/chamil321/orgs","repos_url":"https://api.github.com/users/chamil321/repos","events_url":"https://api.github.com/users/chamil321/events{/privacy}","received_events_url":"https://api.github.com/users/chamil321/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/chamil321/ballerina","description":"Ballerina is a new programming language for integration built on a sequence diagram metaphor.","fork":true,"url":"https://api.github.com/repos/chamil321/ballerina","forks_url":"https://api.github.com/repos/chamil321/ballerina/forks","keys_url":"https://api.github.com/repos/chamil321/ballerina/keys{/key_id}","collaborators_url":"https://api.github.com/repos/chamil321/ballerina/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/chamil321/ballerina/teams","hooks_url":"https://api.github.com/repos/chamil321/ballerina/hooks","issue_events_url":"https://api.github.com/repos/chamil321/ballerina/issues/events{/number}","events_url":"https://api.github.com/repos/chamil321/ballerina/events","assignees_url":"https://api.github.com/repos/chamil321/ballerina/assignees{/user}","branches_url":"https://api.github.com/repos/chamil321/ballerina/branches{/branch}","tags_url":"https://api.github.com/repos/chamil321/ballerina/tags","blobs_url":"https://api.github.com/repos/chamil321/ballerina/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/chamil321/ballerina/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/chamil321/ballerina/git/refs{/sha}","trees_url":"https://api.github.com/repos/chamil321/ballerina/git/trees{/sha}","statuses_url":"https://api.github.com/repos/chamil321/ballerina/statuses/{sha}","languages_url":"https://api.github.com/repos/chamil321/ballerina/languages","stargazers_url":"https://api.github.com/repos/chamil321/ballerina/stargazers","contributors_url":"https://api.github.com/repos/chamil321/ballerina/contributors","subscribers_url":"https://api.github.com/repos/chamil321/ballerina/subscribers","subscription_url":"https://api.github.com/repos/chamil321/ballerina/subscription","commits_url":"https://api.github.com/repos/chamil321/ballerina/commits{/sha}","git_commits_url":"https://api.github.com/repos/chamil321/ballerina/git/commits{/sha}","comments_url":"https://api.github.com/repos/chamil321/ballerina/comments{/number}","issue_comment_url":"https://api.github.com/repos/chamil321/ballerina/issues/comments{/number}","contents_url":"https://api.github.com/repos/chamil321/ballerina/contents/{+path}","compare_url":"https://api.github.com/repos/chamil321/ballerina/compare/{base}...{head}","merges_url":"https://api.github.com/repos/chamil321/ballerina/merges","archive_url":"https://api.github.com/repos/chamil321/ballerina/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/chamil321/ballerina/downloads","issues_url":"https://api.github.com/repos/chamil321/ballerina/issues{/number}","pulls_url":"https://api.github.com/repos/chamil321/ballerina/pulls{/number}","milestones_url":"https://api.github.com/repos/chamil321/ballerina/milestones{/number}","notifications_url":"https://api.github.com/repos/chamil321/ballerina/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/chamil321/ballerina/labels{/name}","releases_url":"https://api.github.com/repos/chamil321/ballerina/releases{/id}","deployments_url":"https://api.github.com/repos/chamil321/ballerina/deployments","created_at":"2017-05-04T07:15:32Z","updated_at":"2017-05-04T07:15:36Z","pushed_at":"2018-02-05T05:06:30Z","git_url":"git://github.com/chamil321/ballerina.git","ssh_url":"git@github.com:chamil321/ballerina.git","clone_url":"https://github.com/chamil321/ballerina.git","svn_url":"https://github.com/chamil321/ballerina","homepage":"","size":127089,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"ballerina-lang:master","ref":"master","sha":"fcd43f746145d364f30ca9060c7a949187da940d","user":{"login":"ballerina-lang","id":24777199,"avatar_url":"https://avatars1.githubusercontent.com/u/24777199?v=4","gravatar_id":"","url":"https://api.github.com/users/ballerina-lang","html_url":"https://github.com/ballerina-lang","followers_url":"https://api.github.com/users/ballerina-lang/followers","following_url":"https://api.github.com/users/ballerina-lang/following{/other_user}","gists_url":"https://api.github.com/users/ballerina-lang/gists{/gist_id}","starred_url":"https://api.github.com/users/ballerina-lang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ballerina-lang/subscriptions","organizations_url":"https://api.github.com/users/ballerina-lang/orgs","repos_url":"https://api.github.com/users/ballerina-lang/repos","events_url":"https://api.github.com/users/ballerina-lang/events{/privacy}","received_events_url":"https://api.github.com/users/ballerina-lang/received_events","type":"Organization","site_admin":false},"repo":{"id":73930305,"name":"ballerina","full_name":"ballerina-lang/ballerina","owner":{"login":"ballerina-lang","id":24777199,"avatar_url":"https://avatars1.githubusercontent.com/u/24777199?v=4","gravatar_id":"","url":"https://api.github.com/users/ballerina-lang","html_url":"https://github.com/ballerina-lang","followers_url":"https://api.github.com/users/ballerina-lang/followers","following_url":"https://api.github.com/users/ballerina-lang/following{/other_user}","gists_url":"https://api.github.com/users/ballerina-lang/gists{/gist_id}","starred_url":"https://api.github.com/users/ballerina-lang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ballerina-lang/subscriptions","organizations_url":"https://api.github.com/users/ballerina-lang/orgs","repos_url":"https://api.github.com/users/ballerina-lang/repos","events_url":"https://api.github.com/users/ballerina-lang/events{/privacy}","received_events_url":"https://api.github.com/users/ballerina-lang/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ballerina-lang/ballerina","description":"Ballerina is a new programming language for integration built on a sequence diagram metaphor.","fork":false,"url":"https://api.github.com/repos/ballerina-lang/ballerina","forks_url":"https://api.github.com/repos/ballerina-lang/ballerina/forks","keys_url":"https://api.github.com/repos/ballerina-lang/ballerina/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ballerina-lang/ballerina/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ballerina-lang/ballerina/teams","hooks_url":"https://api.github.com/repos/ballerina-lang/ballerina/hooks","issue_events_url":"https://api.github.com/repos/ballerina-lang/ballerina/issues/events{/number}","events_url":"https://api.github.com/repos/ballerina-lang/ballerina/events","assignees_url":"https://api.github.com/repos/ballerina-lang/ballerina/assignees{/user}","branches_url":"https://api.github.com/repos/ballerina-lang/ballerina/branches{/branch}","tags_url":"https://api.github.com/repos/ballerina-lang/ballerina/tags","blobs_url":"https://api.github.com/repos/ballerina-lang/ballerina/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ballerina-lang/ballerina/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ballerina-lang/ballerina/git/refs{/sha}","trees_url":"https://api.github.com/repos/ballerina-lang/ballerina/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ballerina-lang/ballerina/statuses/{sha}","languages_url":"https://api.github.com/repos/ballerina-lang/ballerina/languages","stargazers_url":"https://api.github.com/repos/ballerina-lang/ballerina/stargazers","contributors_url":"https://api.github.com/repos/ballerina-lang/ballerina/contributors","subscribers_url":"https://api.github.com/repos/ballerina-lang/ballerina/subscribers","subscription_url":"https://api.github.com/repos/ballerina-lang/ballerina/subscription","commits_url":"https://api.github.com/repos/ballerina-lang/ballerina/commits{/sha}","git_commits_url":"https://api.github.com/repos/ballerina-lang/ballerina/git/commits{/sha}","comments_url":"https://api.github.com/repos/ballerina-lang/ballerina/comments{/number}","issue_comment_url":"https://api.github.com/repos/ballerina-lang/ballerina/issues/comments{/number}","contents_url":"https://api.github.com/repos/ballerina-lang/ballerina/contents/{+path}","compare_url":"https://api.github.com/repos/ballerina-lang/ballerina/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ballerina-lang/ballerina/merges","archive_url":"https://api.github.com/repos/ballerina-lang/ballerina/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ballerina-lang/ballerina/downloads","issues_url":"https://api.github.com/repos/ballerina-lang/ballerina/issues{/number}","pulls_url":"https://api.github.com/repos/ballerina-lang/ballerina/pulls{/number}","milestones_url":"https://api.github.com/repos/ballerina-lang/ballerina/milestones{/number}","notifications_url":"https://api.github.com/repos/ballerina-lang/ballerina/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ballerina-lang/ballerina/labels{/name}","releases_url":"https://api.github.com/repos/ballerina-lang/ballerina/releases{/id}","deployments_url":"https://api.github.com/repos/ballerina-lang/ballerina/deployments","created_at":"2016-11-16T14:58:44Z","updated_at":"2018-02-04T07:34:14Z","pushed_at":"2018-02-05T06:26:05Z","git_url":"git://github.com/ballerina-lang/ballerina.git","ssh_url":"git@github.com:ballerina-lang/ballerina.git","clone_url":"https://github.com/ballerina-lang/ballerina.git","svn_url":"https://github.com/ballerina-lang/ballerina","homepage":"","size":126966,"stargazers_count":227,"watchers_count":227,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":207,"mirror_url":null,"archived":false,"open_issues_count":391,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":207,"open_issues":391,"watchers":227,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520"},"html":{"href":"https://github.com/ballerina-lang/ballerina/pull/4520"},"issue":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/issues/4520"},"comments":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/issues/4520/comments"},"review_comments":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520/comments"},"review_comment":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/pulls/4520/commits"},"statuses":{"href":"https://api.github.com/repos/ballerina-lang/ballerina/statuses/7631987d618eec9c121d2c81f6222aac5cfd3fde"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"shafreenAnfar"}}