{"action":"created","comment":{"url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/comments/58202746","id":58202746,"diff_hunk":"@@ -0,0 +1,236 @@\n+/**\r\n+ * The contents of this file are subject to the OpenMRS Public License\r\n+ * Version 1.0 (the \"License\"); you may not use this file except in\r\n+ * compliance with the License. You may obtain a copy of the License at\r\n+ * http://license.openmrs.org\r\n+ *\r\n+ * Software distributed under the License is distributed on an \"AS IS\"\r\n+ * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the\r\n+ * License for the specific language governing rights and limitations\r\n+ * under the License.\r\n+ *\r\n+ * Copyright (C) OpenMRS, LLC.  All Rights Reserved.\r\n+ */\r\n+package org.openmrs.module.webservices.rest.web.v1_0.controller.openmrs2_0;\r\n+\r\n+import org.openmrs.Allergy;\r\n+import org.openmrs.Allergen;\r\n+import org.openmrs.AllergenType;\r\n+import org.openmrs.Allergies;\r\n+import org.openmrs.Concept;\r\n+import org.openmrs.Patient;\r\n+import org.openmrs.api.context.Context;\r\n+import org.openmrs.module.webservices.rest.web.RestTestConstants2_0;\r\n+import org.junit.Assert;\r\n+import org.junit.Before;\r\n+import org.junit.Test;\r\n+import org.junit.Ignore;\r\n+import org.openmrs.module.webservices.rest.SimpleObject;\r\n+import org.springframework.mock.web.MockHttpServletRequest;\r\n+import org.springframework.web.context.request.WebRequest;\r\n+import org.openmrs.module.webservices.rest.test.Util;\r\n+import org.openmrs.module.webservices.rest.web.v1_0.controller.MainResourceControllerTest;\r\n+import org.openmrs.module.webservices.rest.web.response.ObjectNotFoundException;\r\n+import org.openmrs.module.webservices.rest.web.response.ResourceDoesNotSupportOperationException;\r\n+\r\n+public class PatientAllergyController2_0Test extends MainResourceControllerTest {\r\n+\t\r\n+\t@Before\r\n+\tpublic void init() throws Exception {\r\n+\t\texecuteDataSet(RestTestConstants2_0.ALLERGY_TEST_DATA_XML);\r\n+\t\texecuteDataSet(RestTestConstants2_0.OTHER_NON_CODED_CONCEPT_TEST_DATA_XML);\r\n+\t\tAllergen.setOtherNonCodedConceptUuid(RestTestConstants2_0.ALLERGY_OTHER_NON_CODED_UUID);\r\n+\t}\r\n+\t\r\n+\t@Override\r\n+\tpublic String getURI() {\r\n+\t\treturn \"patient/\" + RestTestConstants2_0.PATIENT_UUID + \"/allergy\";\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t * @see org.openmrs.module.webservices.rest.web.v1_0.controller.MainResourceControllerTest#getUuid()\r\n+\t */\r\n+\t@Override\r\n+\tpublic String getUuid() {\r\n+\t\treturn RestTestConstants2_0.ALLERGY_UUID; // allergy does not support uuid\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t * @see org.openmrs.module.webservices.rest.web.v1_0.controller.MainResourceControllerTest#getAllCount()\r\n+\t */\r\n+\t@Override\r\n+\tpublic long getAllCount() {\r\n+\t\treturn 4;\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Delete Allergy\r\n+\t */\r\n+\t@Test\r\n+\tpublic void shouldDeleteUniqueAllergy() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tAssert.assertFalse(allergy.isVoided());\r\n+\t\t\r\n+\t\thandle(newDeleteRequest(getURI() + \"/\" + getUuid(), \r\n+\t\t\t\tnew Parameter(\"reason\", \"unit test\")));\r\n+\t\tallergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tAssert.assertTrue(allergy.isVoided());\r\n+\t\tAssert.assertEquals(\"unit test\", allergy.getVoidReason());\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Delete Allergy incorrectly\r\n+\t *  throw ObjectNotFoundException because allergy does not exist\r\n+\t */\r\n+\t@Test(expected = ObjectNotFoundException.class)\r\n+\tpublic void shouldThrowExceptionWhenDeletingNonExistentAllergy() throws Exception\r\n+\t{\r\n+\t\thandle(newDeleteRequest(getURI() + \"/\" + \"NonExistentAllergyUUID\", \r\n+\t\t\t\tnew Parameter(\"reason\", \"unit test\")));\r\n+\t}\r\n+\r\n+\t/**\r\n+\t *  Delete all Allergies\r\n+\t */\r\n+\t@Test\r\n+\tpublic void shouldDeleteAllAllergies() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\t\t\r\n+\t\tAllergies allergies = Context.getPatientService().getAllergies(allergy.getPatient());\r\n+\t\tAssert.assertNotEquals(Allergies.UNKNOWN, allergies.getAllergyStatus());\r\n+\t\tAssert.assertFalse(allergy.isVoided());\r\n+\r\n+\t\thandle(newDeleteRequest(getURI(), \r\n+\t\t\t\tnew Parameter(\"reason\", \"unit test\")));\r\n+\t\t\r\n+\t\tallergy = Context.getPatientService().getAllergyByUuid(getUuid());\t\t\r\n+\t\tallergies = Context.getPatientService().getAllergies(allergy.getPatient());\r\n+\t\tAssert.assertTrue(allergy.isVoided());\r\n+\t\tAssert.assertEquals(\"unit test\", allergy.getVoidReason());\r\n+\t\tAssert.assertEquals(Allergies.UNKNOWN, allergies.getAllergyStatus());\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Save Allergy with Coded Allergen\r\n+\t */\r\n+\t@Test\r\n+\tpublic void shouldSaveAllergyWithCodedAllergen() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tPatient patient = allergy.getPatient();\r\n+\t\tAllergies allergies = Context.getPatientService().getAllergies(patient);\r\n+\t\tAssert.assertEquals(allergies.size(), 4);\r\n+\r\n+\t\tString json = \"{\\\"allergen\\\": {\\\"allergenType\\\":\\\"DRUG\\\", \\\"codedAllergen\\\": { \\\"uuid\\\": \\\"35d3346a-6769-4d52-823f-b4b234bac3e3\\\"} }}\";\r\n+\t\tSimpleObject newAllergy = deserialize(handle(newPostRequest(getURI(), json)));\r\n+\t\t\r\n+\t\tAssert.assertEquals(\"DRUG\", Util.getByPath(newAllergy, \"allergen/allergenType\"));\r\n+\t\tAssert.assertEquals(\"35d3346a-6769-4d52-823f-b4b234bac3e3\", Util.getByPath(newAllergy, \"allergen/codedAllergen/uuid\"));\r\n+\t\tallergies = Context.getPatientService().getAllergies(patient);\r\n+\t\tAssert.assertEquals(allergies.size(), 5);\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Save Allergy with Non Coded Allergen\r\n+\t */\r\n+\t@Test\r\n+\tpublic void shouldSaveAllergyWithNonCodedAllergen() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tPatient patient = allergy.getPatient();\r\n+\t\tAllergies allergies = Context.getPatientService().getAllergies(patient);\r\n+\t\tAssert.assertEquals(allergies.size(), 4);\r\n+\t\t\r\n+\t\t// this is the proper sequence to set nonCodedAllergen\r\n+\t\tString json = \"{\\\"allergen\\\": {\\\"allergenType\\\":\\\"DRUG\\\", \\\"codedAllergen\\\": { \\\"uuid\\\": \\\"5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\\\"}, \\\"nonCodedAllergen\\\": \\\"test non coded\\\" }}\";\r\n+\t\tSimpleObject newAllergy = deserialize(handle(newPostRequest(getURI(), json)));\r\n+\t\t\r\n+\t\tAssert.assertEquals(\"DRUG\", Util.getByPath(newAllergy, \"allergen/allergenType\"));\r\n+\t\tAssert.assertEquals(\"test non coded\", Util.getByPath(newAllergy, \"allergen/nonCodedAllergen\"));\r\n+\t\tAssert.assertEquals(\"5622AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\", Util.getByPath(newAllergy, \"allergen/codedAllergen/uuid\"));\r\n+\t\tallergies = Context.getPatientService().getAllergies(patient);\r\n+\t\tAssert.assertEquals(allergies.size(), 5);\r\n+\t}\r\n+\r\n+\t/**\r\n+\t *  Set No Known Allergies icorrectly using empty post body\r\n+\t *  throw ResourceDoesNotSupportOperationException because Patient does not exist\r\n+\t */\r\n+\t@Test(expected = ResourceDoesNotSupportOperationException.class)\r\n+\tpublic void shouldThrowExceptionWhenSettingNoKnownAllergiesForNonExistingPatientUsingEmptyPostBody() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tPatient patient = allergy.getPatient();\r\n+\t\tAllergies allergies = Context.getPatientService().getAllergies(patient);\t\t\r\n+\t\tAssert.assertEquals(Allergies.SEE_LIST, allergies.getAllergyStatus());\r\n+\r\n+\t\tString nonExistentPatientURI = \"patient/nonExistingPatient/allergy\";\r\n+\t\tString json = \"{}\";\r\n+\t\thandle(newPutRequest(nonExistentPatientURI, json));\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Set No Known Allergies icorrectly using non empty post body and List of Allergies is empty\r\n+\t *  throw ResourceDoesNotSupportOperationException because of non empty post body\r\n+\t */\r\n+\t@Test(expected = ResourceDoesNotSupportOperationException.class)\r\n+\tpublic void shouldThrowExceptionWhenSettingNoKnownAllergiesWithExistingPatientUsingNonEmptyPostBody() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r\n+\t\tPatient patient = allergy.getPatient();\r\n+\t\tAllergies allergies = Context.getPatientService().getAllergies(patient);\t\t\r\n+\t\tAssert.assertEquals(Allergies.SEE_LIST, allergies.getAllergyStatus());\r\n+\t\t\r\n+\t\t// delete existing allergies\r\n+\t\thandle(newDeleteRequest(getURI(), \r\n+\t\t\t\tnew Parameter(\"reason\", \"unit test\")));\r\n+\r\n+\t\tallergies = Context.getPatientService().getAllergies(allergy.getPatient());\r\n+\t\tAssert.assertEquals(Allergies.UNKNOWN, allergies.getAllergyStatus());\r\n+\r\n+\t\tString json = \"{\\\"allergen\\\": {\\\"allergenType\\\":\\\"DRUG\\\", \\\"nonCodedAllergen\\\": \\\"test non coded\\\" }}\";\r\n+\t\thandle(newPutRequest(getURI(), json));\r\n+\t}\r\n+\t\r\n+\t/**\r\n+\t *  Set No Known Allergies icorrectly using empty post body\r\n+\t *  throw ResourceDoesNotSupportOperationException because List of Allergies is not empty\r\n+\t */\r\n+\t@Test(expected = ResourceDoesNotSupportOperationException.class)\r\n+\tpublic void shouldThrowExceptionWhenSettingNoKnownAllergiesWithExistingPatientUsingEmptyPostBody() throws Exception\r\n+\t{\r\n+\t\tAllergy allergy = Context.getPatientService().getAllergyByUuid(getUuid());\r","path":"omod-2.0/src/test/java/org/openmrs/module/webservices/rest/web/v1_0/controller/openmrs2_0/PatientAllergyController2_0Test.java","position":203,"original_position":203,"commit_id":"e23badd351a5440944f6d9ee7b4cfe46ad3f8e8b","original_commit_id":"acde09bbc7b96a9a1dbc5cd6b78e3fa61b99cb4c","user":{"login":"jdegraft","id":9338294,"avatar_url":"https://avatars.githubusercontent.com/u/9338294?v=3","gravatar_id":"","url":"https://api.github.com/users/jdegraft","html_url":"https://github.com/jdegraft","followers_url":"https://api.github.com/users/jdegraft/followers","following_url":"https://api.github.com/users/jdegraft/following{/other_user}","gists_url":"https://api.github.com/users/jdegraft/gists{/gist_id}","starred_url":"https://api.github.com/users/jdegraft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdegraft/subscriptions","organizations_url":"https://api.github.com/users/jdegraft/orgs","repos_url":"https://api.github.com/users/jdegraft/repos","events_url":"https://api.github.com/users/jdegraft/events{/privacy}","received_events_url":"https://api.github.com/users/jdegraft/received_events","type":"User","site_admin":false},"body":"the conditions for setting no known allergies are multiple, it would result in very long test method names.\r\nupdated pull request","created_at":"2016-04-01T13:10:31Z","updated_at":"2016-04-01T13:10:31Z","html_url":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195#discussion_r58202746","pull_request_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195","_links":{"self":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/comments/58202746"},"html":{"href":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195#discussion_r58202746"},"pull_request":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195"}}},"pull_request":{"url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195","id":63587750,"html_url":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195","diff_url":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195.diff","patch_url":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195.patch","issue_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/195","number":195,"state":"open","locked":false,"title":"RESTWS-557 Move allergyapi REST into core","user":{"login":"jdegraft","id":9338294,"avatar_url":"https://avatars.githubusercontent.com/u/9338294?v=3","gravatar_id":"","url":"https://api.github.com/users/jdegraft","html_url":"https://github.com/jdegraft","followers_url":"https://api.github.com/users/jdegraft/followers","following_url":"https://api.github.com/users/jdegraft/following{/other_user}","gists_url":"https://api.github.com/users/jdegraft/gists{/gist_id}","starred_url":"https://api.github.com/users/jdegraft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdegraft/subscriptions","organizations_url":"https://api.github.com/users/jdegraft/orgs","repos_url":"https://api.github.com/users/jdegraft/repos","events_url":"https://api.github.com/users/jdegraft/events{/privacy}","received_events_url":"https://api.github.com/users/jdegraft/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-03-21T16:00:40Z","updated_at":"2016-04-01T13:10:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9665da2546d94fc7a8f00bbf388b09daee2ff06d","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195/commits","review_comments_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195/comments","review_comment_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/195/comments","statuses_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/statuses/e23badd351a5440944f6d9ee7b4cfe46ad3f8e8b","head":{"label":"jdegraft:RESTWS-557","ref":"RESTWS-557","sha":"e23badd351a5440944f6d9ee7b4cfe46ad3f8e8b","user":{"login":"jdegraft","id":9338294,"avatar_url":"https://avatars.githubusercontent.com/u/9338294?v=3","gravatar_id":"","url":"https://api.github.com/users/jdegraft","html_url":"https://github.com/jdegraft","followers_url":"https://api.github.com/users/jdegraft/followers","following_url":"https://api.github.com/users/jdegraft/following{/other_user}","gists_url":"https://api.github.com/users/jdegraft/gists{/gist_id}","starred_url":"https://api.github.com/users/jdegraft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdegraft/subscriptions","organizations_url":"https://api.github.com/users/jdegraft/orgs","repos_url":"https://api.github.com/users/jdegraft/repos","events_url":"https://api.github.com/users/jdegraft/events{/privacy}","received_events_url":"https://api.github.com/users/jdegraft/received_events","type":"User","site_admin":false},"repo":{"id":39863327,"name":"openmrs-module-webservices.rest","full_name":"jdegraft/openmrs-module-webservices.rest","owner":{"login":"jdegraft","id":9338294,"avatar_url":"https://avatars.githubusercontent.com/u/9338294?v=3","gravatar_id":"","url":"https://api.github.com/users/jdegraft","html_url":"https://github.com/jdegraft","followers_url":"https://api.github.com/users/jdegraft/followers","following_url":"https://api.github.com/users/jdegraft/following{/other_user}","gists_url":"https://api.github.com/users/jdegraft/gists{/gist_id}","starred_url":"https://api.github.com/users/jdegraft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdegraft/subscriptions","organizations_url":"https://api.github.com/users/jdegraft/orgs","repos_url":"https://api.github.com/users/jdegraft/repos","events_url":"https://api.github.com/users/jdegraft/events{/privacy}","received_events_url":"https://api.github.com/users/jdegraft/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jdegraft/openmrs-module-webservices.rest","description":"Provides RESTful web services for OpenMRS","fork":true,"url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest","forks_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/forks","keys_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/teams","hooks_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/hooks","issue_events_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/issues/events{/number}","events_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/events","assignees_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/assignees{/user}","branches_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/branches{/branch}","tags_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/tags","blobs_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/git/refs{/sha}","trees_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/statuses/{sha}","languages_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/languages","stargazers_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/stargazers","contributors_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/contributors","subscribers_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/subscribers","subscription_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/subscription","commits_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/commits{/sha}","git_commits_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/git/commits{/sha}","comments_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/comments{/number}","issue_comment_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/issues/comments{/number}","contents_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/contents/{+path}","compare_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/merges","archive_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/downloads","issues_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/issues{/number}","pulls_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/pulls{/number}","milestones_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/milestones{/number}","notifications_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/labels{/name}","releases_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/releases{/id}","deployments_url":"https://api.github.com/repos/jdegraft/openmrs-module-webservices.rest/deployments","created_at":"2015-07-28T23:47:56Z","updated_at":"2016-01-22T17:06:24Z","pushed_at":"2016-04-01T13:04:56Z","git_url":"git://github.com/jdegraft/openmrs-module-webservices.rest.git","ssh_url":"git@github.com:jdegraft/openmrs-module-webservices.rest.git","clone_url":"https://github.com/jdegraft/openmrs-module-webservices.rest.git","svn_url":"https://github.com/jdegraft/openmrs-module-webservices.rest","homepage":null,"size":4777,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":false,"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":"openmrs:master","ref":"master","sha":"84ca6f8fc0129329e07447434b3ba854ed79dd22","user":{"login":"openmrs","id":860776,"avatar_url":"https://avatars.githubusercontent.com/u/860776?v=3","gravatar_id":"","url":"https://api.github.com/users/openmrs","html_url":"https://github.com/openmrs","followers_url":"https://api.github.com/users/openmrs/followers","following_url":"https://api.github.com/users/openmrs/following{/other_user}","gists_url":"https://api.github.com/users/openmrs/gists{/gist_id}","starred_url":"https://api.github.com/users/openmrs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openmrs/subscriptions","organizations_url":"https://api.github.com/users/openmrs/orgs","repos_url":"https://api.github.com/users/openmrs/repos","events_url":"https://api.github.com/users/openmrs/events{/privacy}","received_events_url":"https://api.github.com/users/openmrs/received_events","type":"Organization","site_admin":false},"repo":{"id":6951233,"name":"openmrs-module-webservices.rest","full_name":"openmrs/openmrs-module-webservices.rest","owner":{"login":"openmrs","id":860776,"avatar_url":"https://avatars.githubusercontent.com/u/860776?v=3","gravatar_id":"","url":"https://api.github.com/users/openmrs","html_url":"https://github.com/openmrs","followers_url":"https://api.github.com/users/openmrs/followers","following_url":"https://api.github.com/users/openmrs/following{/other_user}","gists_url":"https://api.github.com/users/openmrs/gists{/gist_id}","starred_url":"https://api.github.com/users/openmrs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openmrs/subscriptions","organizations_url":"https://api.github.com/users/openmrs/orgs","repos_url":"https://api.github.com/users/openmrs/repos","events_url":"https://api.github.com/users/openmrs/events{/privacy}","received_events_url":"https://api.github.com/users/openmrs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/openmrs/openmrs-module-webservices.rest","description":"Provides RESTful web services for OpenMRS","fork":false,"url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest","forks_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/forks","keys_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/keys{/key_id}","collaborators_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/teams","hooks_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/hooks","issue_events_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/events{/number}","events_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/events","assignees_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/assignees{/user}","branches_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/branches{/branch}","tags_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/tags","blobs_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/git/refs{/sha}","trees_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/git/trees{/sha}","statuses_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/statuses/{sha}","languages_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/languages","stargazers_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/stargazers","contributors_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/contributors","subscribers_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/subscribers","subscription_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/subscription","commits_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/commits{/sha}","git_commits_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/git/commits{/sha}","comments_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/comments{/number}","issue_comment_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/comments{/number}","contents_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/contents/{+path}","compare_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/compare/{base}...{head}","merges_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/merges","archive_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/downloads","issues_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues{/number}","pulls_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls{/number}","milestones_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/milestones{/number}","notifications_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/labels{/name}","releases_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/releases{/id}","deployments_url":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/deployments","created_at":"2012-12-01T06:50:25Z","updated_at":"2016-02-12T16:52:00Z","pushed_at":"2016-04-01T13:06:13Z","git_url":"git://github.com/openmrs/openmrs-module-webservices.rest.git","ssh_url":"git@github.com:openmrs/openmrs-module-webservices.rest.git","clone_url":"https://github.com/openmrs/openmrs-module-webservices.rest.git","svn_url":"https://github.com/openmrs/openmrs-module-webservices.rest","homepage":null,"size":5748,"stargazers_count":10,"watchers_count":10,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":135,"mirror_url":null,"open_issues_count":5,"forks":135,"open_issues":5,"watchers":10,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195"},"html":{"href":"https://github.com/openmrs/openmrs-module-webservices.rest/pull/195"},"issue":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/195"},"comments":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/issues/195/comments"},"review_comments":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195/comments"},"review_comment":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/pulls/195/commits"},"statuses":{"href":"https://api.github.com/repos/openmrs/openmrs-module-webservices.rest/statuses/e23badd351a5440944f6d9ee7b4cfe46ad3f8e8b"}}}}