00:09:46 *** sunbiz has joined #openmrs-sprint
00:09:46 *** sunbiz has left #openmrs-sprint
00:12:58 *** wyclif has joined #openmrs-sprint
02:19:48 *** robbyoconnor has joined #openmrs-sprint
03:29:14 *** robbyoconnor has quit IRC
04:19:59 *** robbyoconnor has joined #openmrs-sprint
06:15:14 *** dkayiwa has joined #openmrs-sprint
07:13:16 *** bwolfe has joined #openmrs-sprint
07:13:16 *** ChanServ sets mode: +o bwolfe
09:06:59 *** dkayiwa has quit IRC
09:07:21 *** dkayiwa has joined #openmrs-sprint
11:01:28 <dkayiwa> hi bwolfe
11:01:59 <bwolfe> hey'
11:02:10 <dkayiwa> shouldn't PersonNameResource implement SubResource
11:02:56 <dkayiwa> bwolfe: i do not see it implemented by this class
11:03:49 <bwolfe> yes, it should be. is it just a placeholder for now? I don't know that person is quite done yet
11:03:59 <bwolfe> I think sunny just implemented some so he could get the user stuff working
11:04:05 <dkayiwa> ok
11:30:13 <OpenMRSBot> Recent updates in the world of openmrs: New Changeset: OpenMRS (trunk): Data Entry Statistics link visible to all users on Administration page - TRUNK-431... <http://feedproxy.google.com/~r/OMRStrunk/~3/qNBUfrO-iy8/OpenMRS> || New Changeset: OpenMRS (trunk): Date fields should also display the date picker when they receive focus - TRUNK-2220... <http://feedproxy.google.com/~r/OMRStrunk/~3/mc0qFcnfk4g/OpenMRS> || New Changeset: OpenMRS (trunk): Fixing portlet tag extension logic <http://feedproxy.google.com/~r/OMRStrunk/~3/DG9lr6XIFBQ/OpenMRS> || OpenMRS Modules: Data Entry Statistics 1.3.1 uploaded to OpenMRS Module Repository <https://dev.openmrs.org/modules/view.jsp?module=dataentrystatistics&version=&1.3.1>
12:41:11 *** wyclif has quit IRC
13:05:11 *** dkayiwa has quit IRC
13:05:24 <OpenMRSBot> Recent updates in the world of openmrs: New Changeset: OpenMRS (trunk): Unable to find patients if their name is less than 3 characters - TRUNK-222... <http://feedproxy.google.com/~r/OMRStrunk/~3/PEy-fq_pQOQ/OpenMRS>
13:05:28 *** dkayiwa has joined #openmrs-sprint
13:17:20 *** wyclif has joined #openmrs-sprint
13:21:25 *** downeym has joined #openmrs-sprint
13:21:25 *** ChanServ sets mode: +o downeym
13:21:26 *** OpenMRSBot sets mode: +o downeym
13:43:34 *** gauravpaliwal has joined #openmrs-sprint
14:13:46 *** bwolfe has quit IRC
15:09:20 *** downeym has quit IRC
15:11:03 *** downeym has joined #openmrs-sprint
15:11:03 *** ChanServ sets mode: +o downeym
15:11:04 *** OpenMRSBot sets mode: +o downeym
15:12:52 <dkayiwa> hi wyclif
15:13:09 <dkayiwa> was PersonService.voidPersonName added in 1.8 or 1.9?
15:13:23 <wyclif> hi daniel
15:13:44 <wyclif> i think so
15:13:51 <dkayiwa> meaning?
15:14:03 <wyclif> i know that these methods might not be available as of 1.8
15:14:10 <wyclif> so you might not be able to use them
15:14:28 <dkayiwa> meaning they were added in 1.9?
15:14:40 <wyclif> but since webservices will require 1.9, then i guess we drop a jar file from trunk
15:14:50 <wyclif> so that we can access these methods
15:15:25 <dkayiwa> the web services pom file has this
15:15:25 <wyclif> i think they were added in 1.9
15:15:28 <dkayiwa> <openMRSVersion>1.8.0-SNAPSHOT</openMRSVersion>
15:15:45 <dkayiwa> should we change it to 1.9?
15:15:48 <wyclif> i wanted to ask Ben and Darius so that we can get the 1.9 SNAPSHOT
15:15:58 <dkayiwa> ok
15:16:00 <wyclif> because it has these methods
15:16:04 <dkayiwa> ok
15:16:06 <wyclif> can you ping them
15:16:19 <dkayiwa> hi djazayeri
15:52:02 *** cta has joined #openmrs-sprint
16:07:02 <djazayeri> hi dkayiwa
16:07:17 <dkayiwa> hi darius
16:07:37 <dkayiwa> should we change this <openMRSVersion>1.8.0-SNAPSHOT</openMRSVersion
16:07:43 <dkayiwa> to 1.9.0?
16:08:05 *** wyclif has quit IRC
16:08:30 <djazayeri> dkayiwa: I don't think we should change it _yet_.
16:08:40 <dkayiwa> ok
16:08:41 <djazayeri> We probably will before we release
16:09:07 <dkayiwa> i need a method PersonService.voidPersonName() which is in 1.9
16:09:12 <djazayeri> but for the moment, just put the correct line of code for 1.9, commented out, and throw an Exception "not yet implemented"
16:09:18 <djazayeri> or "in 1.9"
16:09:33 <dkayiwa> ok
16:09:48 <djazayeri> that way once we've decided whether or not to use 1.9, we can change all those things at once.
16:09:54 <dkayiwa> ok
16:12:57 *** gauravpaliwal1 has joined #openmrs-sprint
16:13:09 *** gauravpaliwal1 has left #openmrs-sprint
16:14:04 *** gauravpaliwal has quit IRC
17:05:15 *** dkayiwa has quit IRC
17:05:35 *** dkayiwa has joined #openmrs-sprint
17:15:23 <cta> djazayeri: Hi, Darius! Thanx a lot for a clarity review! I've already made corresponding changes with code and I'm going to commit it. Also, I've paid an attention to formatting.
17:39:16 <djazayeri> cta: great. where was that formatting coming from, by the way? (the very short line breaks)
17:41:32 <cta> djazayeri: They were cause of my previos Eclipse IDE crash. But anyway, I've already add OpenMRSFormatter.xml to Eclipse again and now everything is fine.
17:41:55 <djazayeri> cta: great, i'll do a followup review when you've committed
17:43:07 <cta> I've already commited it. It's 20161-162 revisions
17:43:29 <cta> Now I'm starting to work on CohortMemberes support
17:51:00 <cta> djazayeri: Darius, few words about Cohort members. Do we need to implement all inherited methods within CohortMembersResourse, or just implement getAll, getByUniqueId?
17:51:41 <djazayeri> see the DelegatingSubResource method
17:52:36 <djazayeri> cta: class, I mean.
17:53:04 <djazayeri> We might actually need to change the way it works, because it sort of assumes there's an underlying object with a globally-unique uuid
17:53:18 <djazayeri> but in the cohort-member case we don't have that
17:53:35 <cta> ok, I understand it
17:56:13 <cta> So, we can implement CohortMember utility class which will be responsible for direct linking cohort with patient by id. And that use it within purge and save overriding methods from DelegatingSubResource
17:58:09 <cta> djazayeri: Darius, but I'm not sure that we reaaly should implement delete() or newDelegate() superclass methods. Am I right?
17:59:20 <djazayeri> cta: delete() means remove the patient from the cohort. (It doesn't mean delete the patient)
17:59:39 <cta> and a purge?
17:59:57 <djazayeri> throw ResourceDoesNotSupport...()
18:00:14 <cta> djazayeri: and what does the purge() mean in this case?
18:00:26 <cta> ok, sorry))
18:00:28 <djazayeri> purge doesn't mean anything in this case
18:01:57 <cta> djazayeri: ok, thanx, Darius! You help was really helpful!
18:09:45 *** wyclif has joined #openmrs-sprint
18:14:55 *** downeym_ has joined #openmrs-sprint
18:14:55 *** ChanServ sets mode: +o downeym_
18:17:57 *** downeym has quit IRC
18:17:57 *** downeym_ is now known as downeym
18:38:45 *** bwolfe has joined #openmrs-sprint
18:38:45 *** ChanServ sets mode: +o bwolfe
18:40:04 <bwolfe> cta: FYI: you should put the ticket number in all commits related to the ticket
18:41:09 <cta> bwolfe: Yes, I did it. What's wrong?
18:41:26 <bwolfe> you just put #18
18:41:36 <cta> oh, sorry
18:41:57 <bwolfe> should be RESTWS-18 . fisheye/crucible/bamboo/etc all link automatically on the KEY-NUM when it finds it
18:42:12 <cta> it was my bad
18:42:35 <cta> but anyway, I can recommit.
18:42:48 <cta> if such need exists
18:42:53 <bwolfe> you can fix it if you want
18:43:00 <cta> how?
18:43:04 <bwolfe> you don't recommit, you just change that commit's properties
18:43:24 <bwolfe> in eclipse: right click on project and do team->show history
18:43:38 <bwolfe> right click on the commit and choose "set commit properties"
18:43:43 <bwolfe> then change the message and click save
18:43:51 <bwolfe> (takes 3-5 mins for it to change for me. :-/)
18:45:05 <cta> cool, thanx a lot!
18:48:54 <cta> it tooks 3 minutes for me too)) very slow feature
18:54:17 *** dkayiwa has quit IRC
19:01:00 <wyclif> cta, the unit tests for cohort are failing
19:01:09 <wyclif> and for user
19:01:37 <cta> what exactly tests are failing?
19:02:09 <wyclif> getUser_shouldGetAFullRepresentationOfAPatient(org.openmrs.module.webservices.rest.web.controller.UserControllerTest)
19:02:09 <wyclif> getCohort_shouldGetADefaultRepresentationOfACohort(org.openmrs.module.webservices.rest.web.controller.CohortControllerTest)
19:02:09 <wyclif> getCohortByFuzzyName_shouldGetADefaultRepresentationOfACohort(org.openmrs.module.webservices.rest.web.controller.CohortControllerTest)
19:02:09 <wyclif> voidCohort_shouldVoidACohort(org.openmrs.module.webservices.rest.web.controller.CohortControllerTest)
19:02:11 <wyclif> updateCohort_shouldChangeAPropertyOnACohort(org.openmrs.module.webservices.rest.web.controller.CohortControllerTest)
19:02:16 <wyclif> getPatient_shouldGetADefaultRepresentationOfAPatient(org.openmrs.module.webservices.rest.web.controller.PatientControllerTest)
19:02:28 <wyclif> sorry!, i shouldn't have pasted this here
19:02:57 <wyclif> cta, i will paste then in your skype chat
19:04:06 <bwolfe> why not here? All sprint discussion should be in here instead of in private chats...
19:04:25 <cta> wyclif: You know, it's strange, because all my tests for were successfull before comitt
19:04:35 <cta> tests for cohorts
19:05:30 <bwolfe> perhaps you need to update to the latest code cta?
19:05:53 <wyclif> the reason they are failing is that they are in the customDataset.xml file and you need to execute in the test methods where you are running against those rows
19:08:38 <wyclif> cta, can you update and try running them and see if they are passing
19:08:50 <cta> I've updated and rebuilt
19:08:57 <cta> results of my tests
19:08:58 <cta> they are failing is that they are in the customDataset.xml file and you need to execute in the test methods where you are running against those rows
19:09:16 <cta> Created cohort: {
19:09:16 <cta> "uuid" : "ff04cd6d-323c-47f8-98e0-f168fd99c182",
19:09:16 <cta> "cohortId" : 2,
19:09:16 <cta> "name" : "NEW COHORT",
19:09:16 <cta> "description" : "THIS IS NEW COHORT",
19:09:17 <cta> "memberIds" : [ 2, 6 ],
19:09:19 <cta> "uri" : "someprefix://cohort/ff04cd6d-323c-47f8-98e0-f168fd99c182"
19:09:23 <cta> }
19:09:25 <cta> Cohort fetched (default): {
19:09:27 <cta> "uuid" : "05e08b3b-5690-41e1-b651-5391fd946c1a",
19:09:29 <cta> "cohortId" : 1,
19:09:31 <cta> "name" : "B13 deficit",
19:09:33 <cta> "description" : "Has explicit deficit of B13",
19:09:35 <cta> "memberIds" : [ 6, 7, 8 ],
19:09:37 <cta> "uri" : "someprefix://cohort/05e08b3b-5690-41e1-b651-5391fd946c1a"
19:09:39 <cta> }
19:09:41 <cta> Cohort fetched (default): {
19:09:43 <cta> "uuid" : "05e08b3b-5690-41e1-b651-5391fd946c1a",
19:09:45 <cta> "cohortId" : 1,
19:09:47 <cta> "name" : "B13 deficit",
19:09:49 <cta> "description" : "Has explicit deficit of B13",
19:09:53 <cta> "memberIds" : [ 6, 7, 8 ],
19:09:55 <cta> "uri" : "someprefix://cohort/05e08b3b-5690-41e1-b651-5391fd946c1a"
19:09:57 <cta> }
19:09:59 <cta> Edited cohort: ""
19:10:01 <cta> Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.469 sec
19:10:17 <djazayeri> cta: thanks, but I don't think you needed to send us the log of passing tests. :-)
19:11:20 <cta> You know, that it's very important to me to know that I haven't screwed up))
19:11:40 <djazayeri> you can tell us when they _fail_. :-)
19:11:54 <djazayeri> bwolfe, cta, wyclif: I'm going offline for a while. I'm behind in code review, but I'll get to those later in the afternoon (my time)
19:12:15 <cta> ok, no problem
19:12:20 <djazayeri> if you need to talk to me about something time-sensitive, try google chat (same username)
19:12:32 <djazayeri> I'll be available, just not on irc.
19:13:07 <djazayeri> (btw, does irc say I'm away?)
19:13:55 <wyclif> cta, i have figure out the problem
19:14:03 <cta> ??????????
19:14:06 <wyclif> i will commit the fix and they will pass
19:15:14 <cta> wyclif: thanx, truth, I am very worried of it
19:15:41 <bwolfe> djazayeri: my client doesn't me away status
19:16:05 <wyclif> the solution is you need to call executeDataSet(datasetFilename); AND NOT executeXmlDataSet(datasetFilename);
19:16:26 <cta> and what is difference?
19:16:44 <wyclif> you dont have to worry
19:17:20 <bwolfe> why does that make a difference though wyclif ?
19:19:29 <cta> may be that is working for me cause I'm using next:
19:19:30 <cta> <properties>
19:19:30 <cta> <openMRSVersion>1.9.0-SNAPSHOT</openMRSVersion>
19:19:30 <cta> </properties>
19:19:30 <cta> I have had a problem with uploading 1.8 from mvn repositorry
19:20:24 <cta> so, may be executeXmlDataSet doesnt work correctly with 1.8
19:20:39 <wyclif> am not sure but that switch makes the tests pass, bwolfe should probably no better than i, am tring to look at the code in BaseContestSensitiveTest.java
19:21:18 <wyclif> oh! i think that's right
19:21:31 <cta> what exactly?
19:21:36 <wyclif> we are all running against 1.8.0 Snapshot
19:21:58 <wyclif> and you are running against 1.9
19:22:04 <cta> yep,
19:22:10 <wyclif> but i still wonder what the difference is
19:23:00 <wyclif> Even PatientControllerTests are failing
19:23:07 <wyclif> not all but one
19:23:35 <wyclif> bwolfe, i dont know the difference between the two calls, i thought you knew
19:23:41 <cta> getPatient_shouldGetADefaultRepresentationOfAPatient(org.openmrs.module.webservices.rest.web.controller.PatientControl
19:23:41 <cta> lerTest)
19:23:47 <cta> this one?
19:23:52 <wyclif> yes
19:24:14 <cta> it also fails for me too since 20147 commit
19:24:39 <cta> I do not know, what's wrong with it
19:24:43 <bwolfe> wyclif: the xmldataset method is for xml dbunit test files that have some exceptional characters in them I think.
19:25:58 <bwolfe> whats the error with that one?
19:26:18 <wyclif> oh! i think i know why the test for patientcontroller is failing
19:26:47 <wyclif> i added the personAddress subresource that i need to add to register with patient
19:28:59 <wyclif> may be i should register it with personResource
19:31:41 <wyclif> actually personAddress is not a property for person/patient, so i need to add a property setter for it
19:36:01 <wyclif> cta, do want to commit the change or i do it?
19:36:21 <cta> guys, I've made some magic and now I'm using 1.8 version as you, I'm "declaring" that it works. I can commit
19:37:48 <cta> I'm commiting that now
19:38:29 <cta> Committed revision 20168
19:40:18 <wyclif> thanks cta
19:41:22 <cta> you are welcome, as usual, Wyclif!
19:45:35 *** wyclif has quit IRC
19:45:50 *** wyclif has joined #openmrs-sprint
20:01:47 <cta> bwolfe, djazayeri, wyclif: I've had a problem with receiving a parent object for subresource when I was implementing save() and delete() methods for CohortMemberResource. These methods are intended to add/remove patient to cohort in this case. I've solved this problem by adding new field into CohortMemberResource. During operation executing, I keep a link to parent (i.e. cohort) within this field. But it seems not very well for me, since we are using sing
20:01:48 <cta> letons for resources. What do you think, guys?
20:02:48 <bwolfe> this might mean wyclif's suggestion of getting the parent passed into the method is a valid one
20:03:22 <cta> and?
20:08:01 <wyclif> cta are you overriding getParent() and setParent()?
20:08:10 <cta> yep
20:08:32 <wyclif> Can you add a paste bun for you code?
20:08:37 <cta> I'm setting/getting that filed
20:08:42 <wyclif> for the Subresource
20:09:23 <cta> what is "paste bun"?
20:09:31 <wyclif> pastebin.com
20:09:40 <bwolfe> hehe, paste bun sounds tastier
20:09:57 <bwolfe> ok, bedtime for me. stayed up too late last night, need to catch some extra z's tonight
20:10:29 <wyclif> i think there is something you are not setting because it worked for personAddress and patientIdentifier resources
20:10:40 <wyclif> goodnite bwolfe
20:11:11 <cta> goodnight, Ben
20:12:24 <bwolfe> wyclif: his point was that cohortmember is a patient. and it does nto have a .setCohort() on it. its differnet than personaddress because personaddress had a .setPerson method
20:12:24 <wyclif> cta after adding your code to pastebin, add the link to it here
20:12:38 <wyclif> oh! i see
20:13:08 <cta> Wyclif, I was thinking that paste bin is a place where ugly code is storing)))
20:14:19 <cta> http://pastebin.ca/2065013
20:14:43 <wyclif> I this case CohortMemberResource needs to be treated a little different
20:16:00 <cta> and how?
20:22:25 <wyclif> there are two options, either we have to change the logic to what Ben said above, where the parent is passed to the methods by the framework but the problem it wouldn't know how to get the parent.
20:24:30 *** bwolfe has quit IRC
20:27:18 <cta> and what is another option?
20:28:01 *** bwolfe has joined #openmrs-sprint
20:28:01 *** ChanServ sets mode: +o bwolfe
20:33:05 <wyclif> Or in your Controller override the create method and set the parent from within it
20:33:25 <wyclif> in other controllers we haven't been doing this
20:33:45 <cta> second approach sounds better for me
20:33:56 <cta> thank you, Wyclif!!!
20:34:11 <wyclif> because inside the controller, you have access to know the parent's uuid
20:38:09 <wyclif> try calling getResource().setParent(); inside the overridden methods before delagating to the superclass
20:40:02 <wyclif> wait, let me think about what a saying
20:41:32 <cta> ok
20:43:04 *** bwolfe has quit IRC
20:43:48 <cta> I think that it wont work
20:47:04 <cta> wyclif: may be we shall do it inside the resource???
20:48:32 <wyclif> the resource doesn't know about the parent and that is why there are those two methods setParent and getparent
20:49:26 <wyclif> which you the developer you override since you know the parent by calling subResource.getXXX() getter for the parent
20:51:21 <wyclif> and so i still think overriding the create and delete methods would do probably beceause you explicitly set it since you know the Type and parent
20:52:24 <wyclif> so the framework overrides that method ina a generic way and delegates to the actual implementation
20:52:32 <wyclif> can you try that and see what happens
20:53:03 <wyclif> but make sure you set the parent on the resource before calling delete/save
20:56:25 <cta> wyclif: since we have parentUniqueId that is passed in to resource create() method for example, can't we use Context class to load the parent from database instead of above mentioned?
20:58:34 <wyclif> that is what i mean and it is the reason i was saying we need to overide it since we can fetch the parent ourselves from the DB using the uuid
20:59:02 <cta> can you check it http://pastebin.ca/2065026 ?
21:00:30 <wyclif> so basically it would mean you have to delegate at atll to the framework, do the logic within the method and return but you will have to look at the superclass i.e BaseCrudController and see how return values are handled
21:02:01 <wyclif> i think that works too
21:06:15 <wyclif> test it and see if it works
21:06:29 <cta> ok
21:26:32 *** wyclif has quit IRC
21:31:21 *** cta has quit IRC
21:49:23 *** downeym has quit IRC
22:23:24 *** wyclif has joined #openmrs-sprint
23:33:19 <djazayeri> I'm back