IRC Chat : 2012-03-16 - OpenMRS

00:04:37 *** burke_away is now known as burke
01:08:04 *** bwolfe has joined #openmrs
01:08:04 *** ChanServ sets mode: +o bwolfe
01:18:25 *** burke is now known as burke_away
01:58:57 *** burke_away is now known as burke
02:20:49 *** bwolfe has quit IRC
02:21:00 *** burke is now known as burke_away
02:23:04 *** cloud|windoze has joined #openmrs
02:30:02 *** burke_away has quit IRC
02:40:11 *** nribeka has quit IRC
02:40:41 *** cloud|windoze has quit IRC
02:49:18 *** Mkop1 has joined #openmrs
02:49:18 *** ChanServ sets mode: +v Mkop1
02:50:10 *** suranga has joined #openmrs
02:50:10 *** ChanServ sets mode: +v suranga
02:51:32 *** Mkop2 has joined #openmrs
02:51:32 *** ChanServ sets mode: +v Mkop2
02:52:25 *** Mkop has quit IRC
02:54:22 *** Mkop1 has quit IRC
03:05:08 *** harshadura has quit IRC
03:46:37 *** upul` has joined #openmrs
03:46:37 *** ChanServ sets mode: +v upul`
04:50:26 *** suranga has quit IRC
04:51:43 *** suranga has joined #openmrs
05:47:04 *** anu_GSOC has joined #openmrs
05:56:09 *** mzukal has joined #openmrs
06:13:23 *** anu_GSOC has quit IRC
06:16:37 *** suranga has quit IRC
06:26:08 *** mzukal has quit IRC
06:51:52 *** suranga has joined #openmrs
06:51:52 *** ChanServ sets mode: +v suranga
06:57:50 *** bryq has joined #openmrs
06:57:50 *** ChanServ sets mode: +v bryq
07:25:46 *** testing has joined #openmrs
07:26:12 *** testing is now known as Guest7388
07:26:18 *** dkayiwa has joined #openmrs
07:30:34 *** dkayiwa has quit IRC
07:48:30 *** Karesh has joined #openmrs
07:50:17 *** Karesh has quit IRC
07:51:57 *** dkayiwa has joined #openmrs
07:59:53 *** harshadura has joined #openmrs
08:22:58 *** harshadura has quit IRC
08:30:22 *** mvorobey has joined #openmrs
08:30:37 <mvorobey> hi all
08:31:31 <dkayiwa> hey mvorobey
08:31:58 <mvorobey> dkayiwa, how it's going?
08:32:14 <dkayiwa> mvorobey: not bad. and u
08:34:58 <mvorobey> dkayiwa, not bad too, just made a teeth check-up at my dentist
08:35:25 <dkayiwa> mvorobey: oh i see. never done a teeth check-up :)
08:35:46 *** harshadura has joined #openmrs
08:35:54 <mvorobey> dkayiwa, really? me too before today :)
08:36:06 <dkayiwa> :D
08:36:32 <dkayiwa> mvorobey: so who scared you into going there? :)
08:37:29 <suranga> mvorobey, I always wanted to ask, where do you come from exactly ?
08:38:04 <suranga> your timezone seems rather similar to mine, really...
08:38:05 <mvorobey> dkayiwa, my mother did, I had toothache last weekend
08:39:01 <mvorobey> dkayiwa, I'm from Northern Ukraine, and you?
08:39:32 <suranga> Daniel is from uganda.. and Im from Sri Lanka :-)
08:41:41 <mvorobey> suranga, It's 10:43 AM in Ukraine now
08:42:53 *** rafa has joined #openmrs
08:42:53 *** ChanServ sets mode: +v rafa
08:42:58 <suranga> ah, so u r 3.30 hours behind us.. thanks, that helps me place your location better :)
08:43:34 <mvorobey> suranga, that is very pleasant for me to work with geographically dispersed community :)
08:43:50 <mvorobey> suranga, but sometimes it can make some inconveniences
08:45:02 <suranga> I know exactly what you mean, sometime you have to stay awakr for a long time to get peoples feedback, since they are still asleep :-)
08:45:24 <mvorobey> suranga, yep, totally truth
08:50:26 <mvorobey> suranga, dkayiwa: you know, guys, it's interesting moment - today I was on reception at my dentist and found out that stomatological center uses "paper-form based" medical records system and found out that it's bit annoying to fill out all those forms for medical cares, so I became to believe in ideas of OpenMRS with even double-strength :0
08:50:47 <dkayiwa> mvorobey: am in Uganda :)
08:51:51 <suranga> in sri lanka, its the same story... :P but in over case, our people are not very prepared to listen to new ideas :-(
08:52:36 <dkayiwa> mvorobey: hahahahahahah. Thats very very true
08:52:36 <dkayiwa> mvorobey: i also recently went to our main government referal hospital where they enter data in excel. Am planning to use my spare time on Sunday to roll out OpenMRS for them for free :)
08:53:27 <dkayiwa> suranga: use all wisdom you can to make it appealing to them first :)
08:53:42 *** bryq has quit IRC
08:53:43 <mvorobey> suranga, dkayiwa: unfortunately in small towns, people also do not want to improve quality of medicine in general
08:54:08 <dkayiwa> suranga: use an approach where you do not present it as a new idea, but rather something to make their lives easier and hence save more lives :)
08:54:09 <mvorobey> suranga, dkayiwa: in is about our small town
08:54:26 <mvorobey> in = it
08:54:59 <dkayiwa> mvorobey: yes that is true. And it is our task to use all clever ways possible to change that. And yes we can!!! :)
08:56:13 <mvorobey> dkayiwa, totally agree with you and suranga, we would ... no-no we should :)
08:57:55 <suranga> weelll.... i'm not very optimistic... yeesterday a politician asked us to stop using google because america wants to take over our country :-)
08:58:06 <suranga> he specifically mentioed google and gmail :P
08:58:14 <suranga> but you guys do have a point..
08:58:35 <mvorobey> dkayiwa, suranga , but eventually it's too difficult to fight against the fear of change, people do not love changes at all, and it's the major odd
08:58:44 <suranga> the best way to make our politicians adopt something is to make all the neighbouring countries take it up :-)
09:00:26 <mvorobey> suranga, Belorussian (neighbor country) also has a lot of restrictions to use Internet (they need to have passport to connect to Internet there)
09:00:36 <dkayiwa> mvorobey: correct thought difficult, it is still possible :)
09:00:43 <suranga> magicaltrout, :-O
09:03:38 <mvorobey> dkayiwa, suranga: thanks for sharing with me, need to continue my work :)
09:03:59 <dkayiwa> mvorobey: :D
09:08:29 *** harshadura has quit IRC
09:11:17 *** pascal` has joined #openmrs
09:11:17 *** ChanServ sets mode: +v pascal`
09:11:27 <pascal`> Hi
09:11:56 <pascal`> Has anyone ever replaced the default spring binding type mismatch error message in a module?
09:17:04 *** harshadura has joined #openmrs
09:21:59 *** pascal` has quit IRC
09:22:31 *** pascal` has joined #openmrs
09:22:39 *** ChanServ sets mode: +v pascal`
09:22:56 <harshadura> hi
09:27:52 *** harshadura has quit IRC
09:34:31 <suranga> hi dkayiwa is this a bad time to ask a question ? :-)
09:35:05 <dkayiwa> suranga: yes
09:35:36 <suranga> dkayiwa, no worries, i'll come back in a while then :-)
09:35:54 *** opieng has joined #openmrs
09:36:22 <dkayiwa> suranga: oh sorry i meant no
09:36:40 <suranga> dkayiwa, :-)
09:36:56 <suranga> ok then, im going to ask...
09:37:02 <suranga> its like this, I have a parent class which will hold a list of child classes
09:37:14 <suranga> this is gonna be a bi directional mapping...
09:37:53 <suranga> in my parent class hbm file, I have the child class mapped as follows ,
09:37:54 <suranga> <list name="configurationEntries" lazy="false" inverse="true" batch-size="1000"
09:37:54 <suranga> cascade="all-delete-orphan">
09:37:54 <suranga> <key column="configuration_id" not-null="true" />
09:37:54 <suranga> <index column="idx"/>
09:37:54 <suranga> <one-to-many class="org.openmrs.module.patientmatching.ConfigurationEntry" />
09:37:55 <suranga> </list>
09:38:19 <suranga> and in the child class, refer to the parent as follows,
09:38:22 <suranga> <many-to-one name="patientMatchingConfiguration" class="org.openmrs.module.patientmatching.PatientMatchingConfiguration">
09:38:22 <suranga> <column name="configuration_id" not-null="true" />
09:38:22 <suranga> </many-to-one>
09:39:12 *** harshadura has joined #openmrs
09:39:40 <suranga> unfortunately, when I run this, the idx column (see the parent hbm file) gets stored as null,,, so when I try to retrieve it, i get a org.hibernate.HibernateException: null index column for collection: exception
09:40:27 <suranga> im not sure what leads to the idx being null... debugging has not yeilded much results :-(
09:42:49 <dkayiwa> suranga: am not sure i understand you. but is what you are doing already done in any existing openmrs objects?
09:43:15 <dkayiwa> suranga: if yes, can you copy how they dealt with it and see how it goes?
09:43:48 <suranga> dkayiwa, let me try that, I agree the data im giving you is not very clear :-)
09:43:58 <suranga> dkayiwa, will test it out some more....
09:44:02 <dkayiwa> ok
09:51:52 <harshadura> hi
10:06:57 <pascal`> Hi
10:07:20 <pascal`> Anyone managed to successfully over the default spring binding typeMismatch error message in a module?
10:07:24 <pascal`> *override
10:16:47 *** suranga has quit IRC
10:20:40 *** cloud|windoze has joined #openmrs
10:31:24 *** rafa has quit IRC
10:32:02 *** rafa has joined #openmrs
10:32:02 *** ChanServ sets mode: +v rafa
10:37:48 *** cloud|windoze has quit IRC
10:38:54 <rafa> dkayiwa: hi, have you ever seen "Can't start server : Bind on unix socket: Operation not permitted" trying to build standalone?
10:39:36 <dkayiwa> rafa: never. but if i got it, i would kill all mysql processes first and then try again
10:40:06 <rafa> dkayiwa: hmm do you have a command at hand?
10:40:26 <dkayiwa> rafa: for which operating system?
10:40:32 <rafa> dkayiwa: linux
10:40:43 <rafa> dkayiwa: ubuntu
10:40:48 <dkayiwa> rafa: start with ps ux
10:41:02 <dkayiwa> rafa: which will list the processes
10:41:15 <dkayiwa> rafa: then look for mysql in the list
10:41:31 <rafa> dkayiwa: dont see any :/
10:42:01 <dkayiwa> rafa: so nothing like mysql or mysqld?
10:42:10 <rafa> nothing
10:42:39 <dkayiwa> rafa: do you consistently get the error when you for instance try again now to build the standalone?
10:42:48 <rafa> dkayiwa: yes
10:43:03 <dkayiwa> rafa: are you allowed to restart that server?
10:43:11 <dkayiwa> rafa: i would do that as last resort :)
10:43:41 <rafa> http://pastebin.com/Lb0b6EPN
10:43:46 <rafa> dkayiwa: I did that
10:43:56 <dkayiwa> rafa: and you still got the same problem?
10:43:58 <pascal`> rafa, dkayiwa, do either of you know how to override the default spring binding type mismatch error message in a module? OpenMRS overrides it for some types, but I need to override for an additional type.
10:44:02 <rafa> dkayiwa: yes
10:44:38 <rafa> pascal`: not sure what you mean
10:45:07 <dkayiwa> pascal`: me too
10:45:11 <rafa> pascal`: do you hae a code snippet?
10:45:25 <dkayiwa> rafa: looking at your log.....
10:45:28 <pascal`> rafa, if you look in messages.properties (for core), you'll see typeMismatch.<java type>=<better error message>
10:45:44 <harshadura> hi all
10:45:49 <pascal`> dkayiwa, ^ take a look in message.properties and search for "typeMismatch"
10:45:54 <pascal`> maybe djazayeri knows?
10:46:03 <harshadura> I am working on TRUNK-2751 Bug Ticket and need to write Unit Test cases for the ticket.
10:46:04 <harshadura> I have solved most of the problems myself and now stuck with writing test cases. I have no proper idea where to start writing the Test Case. but have to set up the request object with the right parameters to test. Please anyone willing to tell me the directions on how to make that?
10:46:10 <dkayiwa> pascal`: djazayeri must be asleep :)
10:46:16 <dkayiwa> he sleeps in irc :)
10:46:16 <harshadura> https://tickets.openmrs.org/browse/TRUNK-2751
10:47:13 <dkayiwa> rafa: can you change the mysql port in the runtime properties file?
10:47:21 <dkayiwa> rafa: and then build again
10:48:04 <dkayiwa> rafa: you can also change the tomcat port to be on an even safer side :)
10:49:10 <rafa> dkayiwa: how to change the mysql port?
10:49:14 <rafa> dkayiwa: in pom?
10:49:19 <dkayiwa> rafa: yes
10:50:04 <dkayiwa> rafa: basing on the error, just change the mysql port only
10:50:23 <dkayiwa> rafa: in the pom, you will find it in approximately three places where you need to change
10:51:11 <pascal`> Are the modules spring messages prefixed in some way?
10:51:28 <dkayiwa> pascal`: looking at the message.properties now .....
10:52:10 <pascal`> Thanks dkayiwa
10:52:24 <pascal`> Because this is not user friendly: Failed to convert property value of type java.lang.String to required type java.lang.Double for property minimum; nested exception is java.lang.NumberFormatException: For input string: "as"
10:54:52 <dkayiwa> pascal`: so all you need is override the message with a custom one from a module?
10:55:18 <pascal`> dkayiwa, sure, that's what I thought, but it doesn't work.
10:55:38 <pascal`> This is what I have in my module's messages.properties: typeMismatch.java.lang.Double={0} is not a value numeric value
10:55:52 <rafa> dkayiwa: I can't find where ports for mysql mxj are set. I only changed urls in liquibase, but it didn't help
10:56:21 <dkayiwa> rafa: can you also change the one in the runtime properties file?
10:57:01 <dkayiwa> pascal`: i think module ones are by default prefixed with module id
10:57:06 *** upul` has quit IRC
10:57:49 <rafa> dkayiwa: same error
10:58:08 <rafa> dkayiwa: it picked up the port I set
10:58:14 <rafa> dkayiwa: but again failed with the same error
10:58:27 <dkayiwa> rafa: can i look at the new error log?
10:59:04 <rafa> rafal@elusive-vb:/media/d/workspace/standalone$ mvn clean package -Dopenmrs.version=1.9.0-RC
10:59:04 <rafa> [INFO] Scanning for projects...
10:59:04 <rafa> [INFO] ------------------------------------------------------------------------
10:59:04 <rafa> [INFO] Building standalone
10:59:04 <rafa> [INFO] task-segment: [clean, package]
10:59:05 *** rafa has quit IRC
10:59:40 *** rafa has joined #openmrs
10:59:41 *** ChanServ sets mode: +v rafa
10:59:47 <rafa> I got kicked :D
10:59:48 <rafa> http://pastebin.com/WqY7M2PF
11:00:16 <rafa> copied the log instead of pastebin url by mistake
11:00:34 <pascal`> dkayiwa, well, that's not going to work :/
11:00:41 <dkayiwa> rafa: oh i see
11:00:55 <dkayiwa> pascal`: but there has to be a way. looking into it
11:01:58 <pascal`> dkayiwa, thanks!
11:03:26 <dkayiwa> rafa: what permissions does your account have?
11:03:31 <rafa> dkayiwa: ahh I've just copied it to linux partition and it worked
11:03:42 <rafa> dkayiwa: I had it on ntfs
11:03:56 <dkayiwa> rafa: oh good to hear :)
11:04:18 <rafa> dkayiwa: thanks
11:04:19 <harshadura> hi rafa
11:04:23 <rafa> hi harshadura
11:04:41 <harshadura> pls can u help me on my problem
11:04:54 <rafa> harshadura: sure
11:05:01 <harshadura> thx :)
11:05:21 <rafa> harshadura: do you mean in TRUNK-2751?
11:05:31 <rafa> !ticket TRUNK-2751
11:05:34 <OpenMRSBot> rafa: [#TRUNK-2751] Automated Error Report: NumberFormatException on AddPersonController - OpenMRS JIRA - https://tickets.openmrs.org/browse/TRUNK-2751
11:05:42 <harshadura> yes
11:05:47 <harshadura> I am working on TRUNK-2751 Bug Ticket and need to write Unit Test cases for the ticket.
11:05:48 <harshadura> I have solved most of the problems myself and now stuck with writing test cases. I have no proper idea where to start writing the Test Case. but have to set up the request object with the right parameters to test. Please anyone willing to tell me the directions on how to make that?
11:08:19 <rafa> harshadura: see LocationFormControllerTest for instance on how to test controllers
11:08:40 <harshadura> okay
11:08:48 <rafa> harshadura: and create PersonFromControllerTest
11:09:23 <harshadura> okay rafa
11:09:28 <harshadura> then
11:09:40 <rafa> harshadura: sorry it would be AddPersonControllerTest
11:09:47 <harshadura> ok :)
11:10:57 <harshadura> rafa: do I need to fill all the stuff in the form to test this?
11:11:34 <rafa> harshadura: yes, all required request parameters
11:13:03 <harshadura> rafa : as ben said "Unfortunately this isn't a spring 3 annotated controller, so you'll have to set up the request object with the right parameters to test." do I need to do some extra stuff other than PersonFromControllerTest
11:13:30 <pascal`> Any luck dkayiwa?
11:13:42 <dkayiwa> pascal`: about to test what am trying out
11:13:44 <rafa> harshadura: you mean LocationFormControllerTest?
11:13:57 <pascal`> dkayiwa, awesome, thanks! I think the prefix is what's breaking it.
11:14:06 <rafa> harshadura: LocationFormController is written the same way as AddPersonController
11:14:33 <rafa> harshadura: so your AddPersonControllerTest will look the same as LocationFormControllerTest
11:16:12 <harshadura> rafa : thank you so much, I will work on this now and let you knw if found any problems. thx again rafa! :)
11:16:53 <rafa> harshadura: np
11:17:03 *** james_regen has joined #openmrs
11:17:03 *** ChanServ sets mode: +v james_regen
11:20:08 *** pascal` has quit IRC
11:41:54 *** r0bby has quit IRC
11:51:50 *** bwolfe has joined #openmrs
11:51:50 *** ChanServ sets mode: +o bwolfe
11:56:34 *** bwolfe has quit IRC
12:03:52 *** harshadura has quit IRC
12:07:16 *** bryq has joined #openmrs
12:07:16 *** ChanServ sets mode: +v bryq
12:19:38 *** pascal` has joined #openmrs
12:19:38 *** ChanServ sets mode: +v pascal`
12:19:51 <pascal`> any luck with that message thing dkayiwa?
12:20:30 <dkayiwa> pascal`: looks like we may have to use Context.getMessageSourceService().merge
12:20:55 <dkayiwa> pascal`: or Context.getMessageSourceService().publishProperties
12:22:53 <pascal`> dkayiwa, so you're saying I can do it programatically?
12:23:00 <pascal`> dkayiwa, in the activator or something?
12:23:25 <dkayiwa> pascal`: yes in activator
12:25:22 *** harshadura has joined #openmrs
12:27:21 <pascal`> dkayiwa, is there no easy way to just add a message?
12:28:05 <dkayiwa> pascal`: i have so far not seen any. maybe we wait for the others to wake up and ask them. :)
12:29:41 <pascal`> dkayiwa, I'm trying to use the service to add a new PresentationMessage.
12:29:58 <dkayiwa> pascal`: ok
12:32:40 <pascal`> dkayiwa, no luck :/
12:33:20 <dkayiwa> pascal`: no luck with???
12:36:43 <pascal`> dkayiwa, adding this to the activator doesn't work:
12:36:50 <pascal`> PresentationMessage pm = new PresentationMessage("typeMismatch.java.lang.Double", null, "Valid numeric value required", null);
12:36:50 <pascal`> Context.getMessageSourceService().addPresentation(pm);
13:00:59 *** cloud|windoze has joined #openmrs
13:03:12 *** mseaton has joined #openmrs
13:06:54 *** Alok_ has joined #openmrs
13:07:19 *** harshadura has quit IRC
13:11:41 *** Alok_ has quit IRC
13:13:31 *** nribeka has joined #openmrs
13:13:31 *** ChanServ sets mode: +v nribeka
13:14:50 <rafa> dkayiwa: :)
13:15:15 <rafa> dkayiwa: have you seen this: "com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
13:15:16 <rafa> The last packet successfully received from the server was 245,773 milliseconds ago. The last packet sent successfully to the server was 2,700 milliseconds ago." while building the standalone?
13:16:06 <dkayiwa> rafa: sort of. but not with standalone. are you able to reproduce it?
13:16:12 <rafa> dkayiwa: I suppose it's some kind of timeout for a long running sql
13:16:20 <rafa> dkayiwa: yes, happens all the time
13:16:20 <dkayiwa> kind of
13:16:28 <dkayiwa> oh
13:17:39 <dkayiwa> rafa: are you using a relatively slow machine?
13:17:42 *** downey has joined #openmrs
13:17:42 *** ChanServ sets mode: +o downey
13:17:42 *** OpenMRSBot sets mode: +o downey
13:18:22 <rafa> dkayiwa: I'm using Ubunut running in a virtual machine on Windows so yes
13:18:24 <rafa> ;)
13:22:45 <dkayiwa> ok
13:25:29 <dkayiwa> rafa: can you try adding to the connection string: &server.connect-timeout=???
13:26:49 <rafa> dkayiwa: ok
13:34:51 <rafa> dkayiwa: still the same
13:35:11 <rafa> dkayiwa: maybe "&connect-timeout="
13:38:19 *** bwolfe has joined #openmrs
13:38:19 *** ChanServ sets mode: +o bwolfe
13:39:15 <rafa> dkayiwa: it seems to timeout regulary after around 30 seconds
13:41:36 <dkayiwa> rafa: how about: &server.wait_timeout=???
13:42:18 <rafa> dkayiwa: I've set all timeout variables I could find :D the url is very loooooooong now, fingers crossed :D
13:42:32 <dkayiwa> :D
13:42:41 <dkayiwa> rafa: and set to big values ? :)
13:42:55 <rafa> dkayiwa: of course :)
13:43:11 <dkayiwa> rafa: and to the three or so different urls in the pom?
13:43:27 <dkayiwa> rafa: not forgetting the one in the runtime properties file :)
13:48:30 *** dawn_ has joined #openmrs
13:48:35 *** ChanServ sets mode: +v dawn_
13:54:00 *** wyclif has quit IRC
14:00:23 <dawn_> !scrumon dawn
14:00:23 * OpenMRSBot says the DAILY SCRUM MEETING is STARTING. This meeting should not last longer than 15 minutes. Please hold other comments until the end of the meeting, or message someone privately. Thank you! ScrumMaster dawn- you may begin when ready.
14:00:33 <dawn_> Yay! it finally worked this week! :P
14:00:38 <dawn_> Hi Everyone
14:00:59 <dawn_> Today's order: bwolfe , djazayeri , rafa , dkayiwa , mvorobey , mseaton , wy
14:01:07 <rafa> hi
14:01:15 <bwolfe> *sigh*
14:02:33 <bwolfe> today:
14:02:34 <bwolfe> cleaned up RTH module page
14:02:34 <bwolfe> minor investigation of messaging
14:02:34 <bwolfe> options for today: 1.9 tickets? CALC tickets?
14:02:56 <bwolfe> so in the discussion period, I want feedback from daniel/wyclif about who needs my attention the most
14:03:35 <dawn_> bwolfe: any blockers other than knowing which to work on for today?
14:03:48 <bwolfe> no
14:03:55 <dawn_> djazayeri: your turn
14:05:08 <dawn_> rafa: can you go please? we'll have djazayeri go at the end
14:05:22 <rafa> okay
14:05:25 <rafa> Today:
14:05:25 <rafa> * Committed TRUNK-3103: Adding a new concept name fails
14:05:25 <rafa> https://tickets.openmrs.org/browse/TRUNK-3103 which reverts TRUNK-3069: Make COMMIT a default FlushMode
14:05:25 <rafa> * Committed CALC-11: Proof of concept showing how calculation A can call calculation B (which updates the database), and A sees the database change
14:05:25 <rafa> https://tickets.openmrs.org/browse/CALC-11
14:05:26 <rafa> * Fighting with building the standalone... installing Ubuntu, maven, jdk, long story...
14:05:26 <rafa> Blockers: Building the standalone is not that smooth... STAND-44
14:05:57 <dkayiwa> Spent some time looking into why the calculation module, on 1.6 & 1.7, fails to load with this error: Caused by: java.lang.ClassNotFoundException: org.openmrs.calculation.CalculationActivator
14:05:57 <rafa> and it doesn't work on Windows :P
14:05:57 <dkayiwa> 1.9 Release administrative tasks
14:05:58 <dkayiwa> IRC
14:05:58 <dkayiwa> Blocked on a question to wyclif for: Add a check to enforce Parameterdefinition datatypes - CALC-25
14:06:26 <bwolfe> rafa, hmm, we should fix the standalone. discuss soon.
14:07:12 <dawn_> mvorobey: your turn :)
14:07:44 <mvorobey> * Finished CALC-26 and prepared it for code review
14:07:49 <mvorobey> * No blockers
14:08:07 <dawn_> mseaton: your turn
14:08:12 <mseaton> * Release reporting 0.7.0.1
14:08:12 <mseaton> * Release reporting 0.7.1
14:08:12 <mseaton> * Code Review Calculation tickets
14:08:12 <mseaton> * Start CALC-17
14:08:12 <mseaton> * Resolve Design questions for CALC-6 and complete that too
14:08:12 <mseaton> * Provide CALC design / support in IRC and tickets
14:08:34 <mseaton> no blockers (though need to discuss CALC-6)
14:09:02 <dawn_> djazayeri: are you there?
14:09:20 <bwolfe> why the two releases mseaton?
14:09:26 <mseaton> i work fast
14:09:43 * dawn_ searches for wyclif
14:09:54 <mseaton> (we never released 0.7.0.1, but since it is currently bundled in 0.9.x and in the RC, I figured i probably should
14:10:28 <dawn_> !scrumoff dawn
14:10:28 * OpenMRSBot says the DAILY SCRUM MEETING has ENDED. This channel is now returned to normal hacking operations. Post-scrum meeting follow-up conversations may now begin.
14:11:01 <bwolfe> wyclif and djazayeri are missing
14:11:30 <mseaton> i'm amazed i was here for all the scrums this week. are the times totally arbitrary? :)
14:12:05 <dawn_> Discussion Points: 1) Ben: work on calc or 1.9 2) Rafa: STAND-44, 3) Daniel: add a check to enforce parameterdefinition data types CALC-25, 4) Mike: Discuss CALC-6
14:12:20 <dkayiwa> mseaton: the average affordable times for all :)
14:12:36 <pascal`> Are you guys on a call or something now bwolfe?
14:12:40 <bwolfe> mseaton, https://wiki.openmrs.org/display/RES/Daily+Scrum+Meeting
14:12:43 <mseaton> :) i get it. hard to keep track of a different time every day!
14:13:05 <dawn_> bwolfe: since I can't find wyclif, i guess that means you can help daniel with 1.9 :D
14:13:11 <dawn_> mseaton: you speak the truth :)
14:13:11 <mseaton> the benefit - it keeps me hanging around irc!
14:13:22 <dawn_> :D
14:13:24 <bwolfe> !ticket STAND-44
14:13:25 <OpenMRSBot> bwolfe: [#STAND-44] Connection link failure when building standalone - OpenMRS JIRA - https://tickets.openmrs.org/browse/STAND-44
14:14:42 <bwolfe> rafa, is there a ticket for "standalone can't be built on windows" ?
14:14:55 <bwolfe> I can't remember, are we using shell scripts?
14:14:57 <rafa> bwolfe: yes, I've just entered it :)
14:15:04 *** bryq has left #openmrs
14:15:13 <rafa> bwolfe: we're using "zip" exec for no reason
14:15:35 <rafa> bwolfe: https://tickets.openmrs.org/browse/STAND-43
14:16:13 <rafa> bwolfe: on Windows I don't have a problem with STAND-44
14:16:35 <rafa> bwolfe: and I ran out of ideas for STAND-44
14:16:42 <mseaton> bwolfe: where do i go to learn all these fancy commands like !ticket
14:16:43 <rafa> bwolfe: so I'll probably solve STAND-43 :D
14:17:10 <bwolfe> mseaton, you're supposed to just know them. ;-)
14:17:37 <mseaton> i don't even know the normal irc terms, or why some people "have voice", whatever that means
14:17:42 <dkayiwa> rafa: can you pastebin the entire log for stand-44?
14:18:45 *** bwolfe sets mode: +v mseaton
14:18:55 <mseaton> i can talk!
14:18:57 *** bwolfe sets mode: +v dkayiwa
14:19:08 <bwolfe> voice == moderator (ish)
14:19:28 <rafa> dkayiwa: I've just updated the ticket description
14:19:28 <bwolfe> there is an IRC command to "silence" the room. when that happens, only admins and "voice" people can talk
14:19:37 <bwolfe> we've never had to silence the room though...
14:19:49 <dkayiwa> :D
14:19:55 <bwolfe> !refer mseaton [!list alias]
14:19:56 <OpenMRSBot> bwolfe: Error: "!list" is not a valid command.
14:19:57 <mseaton> so is that permanent until it is taken away? does it span sessions?
14:20:03 <bwolfe> !refer mseaton [list alias]
14:20:03 * OpenMRSBot refers mseaton to add, beer, beer2, beerme, changeset, codereview, cr, cs, facts, google, googledefine, gsoc, jira, lock, mailinglist, refer, remove, requestsvnspace, review, scrumoff, scrumon, test, test2, ticket, and unlock
14:20:27 <bwolfe> mseaton, if you register with NickServ on freenode, then downey can make it stick
14:20:34 <bwolfe> type /register nickserv somenewpassword
14:20:46 <bwolfe> then when entering the room, type /id somenewpassword
14:20:50 <dkayiwa> mseaton++
14:21:04 <downey> http://freenode.net/faq.shtml#nicksetup
14:21:11 <bwolfe> (or in pidgin you might be able to put that password in the settings somewhere for hte #openmrs room so that it always happens when you laod it up)
14:21:39 <bwolfe> !beerme
14:21:39 <OpenMRSBot> bwolfe: (beerme <an alias, 1 argument>) -- Alias for "action slides $1 a pint".
14:21:45 <bwolfe> !beerme mseaton
14:21:45 * OpenMRSBot slides mseaton a pint
14:21:48 <downey> !beerme bwolfe
14:21:48 * OpenMRSBot slides bwolfe a pint
14:22:07 <bwolfe> Happy St Patrick's Day!
14:22:13 <mseaton> ok, now i'm seeing the benefits of IRC!
14:22:17 * bwolfe clinks his beer stine with mseaton's
14:22:22 <bwolfe> lol
14:22:35 <downey> irc++
14:23:46 <bwolfe> rafa, have you tried to build it on the openmrs buea server?
14:24:11 <rafa> bwolfe: nope
14:24:17 <rafa> bwolfe: I don't have access to that
14:24:29 <bwolfe> I haven't tried since darius' "fix" to make it work with less memory
14:24:45 <bwolfe> I couldn't build the 1.9 RC standalone on either my machine or buea without an OOM
14:25:13 <bwolfe> rafa, oh, downey can give you access to buea if you want it. not sure if he will demand an ITSM ticket or not...
14:25:19 <downey> buea only has 2gb
14:25:25 <downey> and half of that is used by tomcat
14:26:15 <rafa> downey: that's not helpful :(
14:26:29 <downey> it's designed to be a low-end server :)
14:26:55 <dkayiwa> bwolfe: darius's supposed fix did not redude memory for me
14:27:14 *** cloud|windoze has quit IRC
14:30:26 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Modules: Reporting 0.7.1 uploaded to OpenMRS Module Repository <https://dev.openmrs.org/modules/view.jsp?module=reporting&ampversion=&amp0.7.1> || OpenMRS Modules: Reporting 0.7.0.1 uploaded to OpenMRS Module Repository <https://dev.openmrs.org/modules/view.jsp?module=reporting&ampversion=&amp0.7.0.1>
14:38:29 *** rafa has quit IRC
14:38:46 *** r0bby has joined #openmrs
14:38:46 *** ChanServ sets mode: +v r0bby
14:40:53 *** wyclif has joined #openmrs
14:42:04 <dkayiwa> bwolfe: could you be having an off the head idea why the calculation module, on 1.6 and 1.7, throws this error? Caused by: java.lang.ClassNotFoundException: org.openmrs.calculation.CalculationActivator
14:42:29 <dkayiwa> bwolfe: same module runs well on 1.8 and 1.9
14:42:37 <bwolfe> dkayiwa, it worked in 1.6.3 but not in 1.6.4/1.6.5 ?
14:42:55 <dkayiwa> bwolfe: just confirmed again that it does not work on all 1.6
14:43:03 <bwolfe> how are you compiling it for 1.6?
14:43:48 <dkayiwa> bwolfe: when i wanted to test on lower than 1.6.5, i just changed the require version
14:43:58 <dkayiwa> bwolfe: thats all
14:44:05 <djazayeri> hi guys, sorry, I misread my calendar last night before going to sleep
14:44:56 <mseaton> dkayiwa / bwolfe: does the module framework in pre-1.8 expect module activators to be in the org.openmrs.module namespace?
14:46:23 *** james_regen has left #openmrs
14:47:09 <dkayiwa> mseaton: bwolfe: very good question since thats one of the different between the calculation module and other modules that work well with 1.6 and 1.7. Mike, i assume you mean't org.openmrs namespace :)
14:48:38 <dkayiwa> mseaton: bwolfe i also noted that the calculation module's .omod file duplicates classes as .class files and also in a jar under the lib folder. though did not go so much into changing the pom not to do that
14:48:59 <bwolfe> I don't think any assumptions are made about the package name
14:51:24 <mseaton> dkayiwa: i would expect that the calculation api classes are in a jar in the omod, and the omod classes are in .class files there
14:52:16 <dkayiwa> mseaton: correct that is what it should be. but currently, the api classes are duplicated both in the jar and as .class files
14:52:24 *** dawn_ has quit IRC
14:54:21 *** snoppy has joined #openmrs
14:54:26 <downey> Hi snoppy and welcome to the #openmrs IRC channel.
14:56:37 *** snoppy has quit IRC
14:59:18 <mseaton> dkayiwa: sounds like that might be your problem
15:01:25 *** mvorobey has quit IRC
15:05:13 *** r0bby has quit IRC
15:10:17 <wyclif> mseaton, djazayeri am going to make changes to PatientCalculation so that it extends BaseCalculations so that concrete classes dont have to extend BaseCalculation and implement PatientCalcuation
15:10:34 <mseaton> wyclif: didn't i already do that?
15:10:54 <wyclif> mseaton, nope
15:11:00 <mseaton> (rephrase: i already fixed BaseCalculation)
15:11:08 <mseaton> no may need to fix the concrete classes that extend it
15:11:19 <mseaton> no = you
15:11:32 <wyclif> mseaton, PatientCalculation need to extend BaseCalculation
15:11:45 <mseaton> no
15:11:48 <mseaton> it should not
15:11:58 <wyclif> why not?
15:12:06 <mseaton> PatientCalculation is a marker interface, it should not imply functionality in a Base class
15:12:43 <mseaton> i see no reason why "extends BaseCalculation implements PatientCalculation" is that bad
15:13:14 <wyclif> fine if that how we want it to be
15:13:21 <mseaton> happy to defer to other opinions though if others disagree
15:13:37 *** pascal` has quit IRC
15:17:17 <djazayeri> I agree: PatientCalculation is an interface; BaseCalculation is a helper implementation. So doing AgeCalculation extends BaseCalculation implements PatientCalculation is exactly right
15:17:32 <djazayeri> wyclif, mseaton: ^^
15:17:39 *** Mkop2 is now known as Mkop
15:17:48 <wyclif> hey
15:18:07 <djazayeri> sorry, just agreeing with mike
15:18:11 <wyclif> ok
15:18:23 *** dawn_ has joined #openmrs
15:18:23 *** ChanServ sets mode: +v dawn_
15:21:29 *** magiclko has joined #openmrs
15:21:35 <downey> Hi magiclko and welcome to the #openmrs IRC channel.
15:24:50 *** dkayiwa has left #openmrs
15:25:48 <magiclko> hi downey
15:33:01 *** dawn__ has joined #openmrs
15:33:01 *** ChanServ sets mode: +v dawn__
15:33:01 *** dawn_ has quit IRC
15:33:01 *** dawn__ is now known as dawn_
15:34:44 *** effysam has joined #openmrs
15:34:55 <downey> Hi effysam and welcome to the #openmrs IRC channel.
15:43:46 *** effysam has quit IRC
15:46:37 *** dawn_ has quit IRC
16:00:01 *** dawn_ has joined #openmrs
16:00:01 *** ChanServ sets mode: +v dawn_
16:00:36 *** dawn_ has quit IRC
16:06:26 <mseaton> djazayeri, wyclif: what do you think about moving the PatientCalculationEvaluator into the "calculation/patient" package, next to PatientCalculation?
16:06:39 <mseaton> it seems easier and simpler there
16:06:57 <djazayeri> where is it now?
16:07:13 <mseaton> calculation/evaluator/patient/PatientCalculationEvaluator
16:07:35 <mseaton> so, not even in the same hierarchy
16:07:49 <djazayeri> I'm fine with it next to PatientCalculation
16:08:33 <mseaton> also, how do you feel about providing one example of a Calculation in the module?
16:08:38 <mseaton> not in just tests
16:08:50 <mseaton> i can't even try out saving a Calculation in the web without it :(
16:09:05 <mseaton> maybe PatientIdCalculation that just returns the passed in patient id for each patient?
16:09:16 <djazayeri> I'm tentatively okay with it
16:09:16 <mseaton> you can't get any faster than that
16:10:41 <mseaton> i was trying to avoid it, for the sake of purity, but i think it'll be helpful to have...
16:12:50 <djazayeri> Anyway, I'm okay with it. Will it be its own evaluator?
16:14:53 <mseaton> yes
16:34:05 <djazayeri> bwolfe: how are ContextAuthenticationException and APIAuthenticationException supposed to differ?
16:44:41 <djazayeri> bwolfe: in particular, APIAuthenticationException is handled by the webapp, taking you to the login page, but ContextAuthenticationException is not.
16:44:43 <djazayeri> seems odd
16:52:58 <mseaton> wyclif / djazayeri: yesterday, mvoroley had a problem with hibernate not finding the TokenRegistration entity. today, i started experiencing the same thing (after it working fine for a while).
16:53:26 <mseaton> having looked into it, i _think_ the issue is a conflict between calculation TokenRegistration and logic TokenRegistration both using the same name
16:53:42 *** r0bby has joined #openmrs
16:53:42 *** ChanServ sets mode: +v r0bby
16:53:49 <djazayeri> mseaton: sounds plausible, I guess
16:54:04 <mseaton> when the hbm.xml files had TokenRegistration.hbm.xml as the names, i think one of them was winning, randomly, so sometimes one or the other worked
16:54:08 <djazayeri> an OpenMRS bug or a hibernate one, do you think?
16:54:29 <mseaton> when i changed the hbm.xml file name to CalculationTokenRegistration, module loading failed
16:54:38 <mseaton> with a very, very long stack trace
16:55:30 <mseaton> that i boiled down (i think) to:
16:55:31 <mseaton> Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext-service.xml]: Invocation of init method failed; nested exception is org.hibernate.DuplicateMappingException: duplicate import: TokenRegistration refers to both org.openmrs.logic.token.TokenRegistration and org.openmrs.calculation.TokenRegistration (try using auto-import="false")
16:55:48 <djazayeri> mseaton: interesting
16:56:03 <mseaton> so, obviously we could change the class name.
16:56:10 <mseaton> to CalculationTokenRegistration, or something
16:56:10 <djazayeri> so, the hard/right thing to do would be to explore this in-depth and figure out how to reconfigure our core app to not break this way
16:56:24 <djazayeri> but yeah, I'd vote for creating a ticket to document it, then choosing a different name.
16:56:27 <mseaton> that sounds like a ticket
16:56:30 <mseaton> yes :)
16:56:48 <djazayeri> At some level, do we even need the name "Token"?
16:56:55 <mseaton> not at all
16:57:02 <djazayeri> we could call it a CalculationRegistration
16:57:07 <mseaton> perfect
16:57:11 <mseaton> (burke will not be happy)
16:57:22 <djazayeri> if he were hanging out on IRC, he'd have a say
16:57:29 <mseaton> oh!
16:57:40 <djazayeri> also, he probably won't find out until he gets back from Italy
16:58:09 <djazayeri> we might consider changing the column and property from "name" to "token" though
16:58:22 <djazayeri> e.g. CalculationRegistration.token
16:58:44 <djazayeri> hold on restarting irc client
16:58:47 <mseaton> yes. possible now that we are not using metadata
16:58:57 *** djazayeri has quit IRC
16:59:24 *** djazayeri has joined #openmrs
16:59:24 *** ChanServ sets mode: +o djazayeri
16:59:39 <djazayeri> sorry, now i'm back
16:59:47 <mseaton> ok, i'm going to make all of this so
16:59:55 <djazayeri> anyway, assuming you're going to rename it now, do whatever you think is best
17:00:04 <mseaton> we're agreed
17:00:57 <mseaton> this will rename the tables too
17:11:40 *** r0bby has quit IRC
17:12:00 *** r0bby has joined #openmrs
17:12:00 *** ChanServ sets mode: +v r0bby
17:15:54 *** james_regen has joined #openmrs
17:15:54 *** ChanServ sets mode: +v james_regen
17:20:20 *** suranga has joined #openmrs
17:20:20 *** ChanServ sets mode: +v suranga
17:23:50 <suranga> hi james_regen :-)
17:27:05 <james_regen> suranga: hi
17:27:34 <suranga> james_regen, Im arfaid I have a question for u today..
17:27:53 <james_regen> that's okay, i'm here to answer questions
17:27:55 <suranga> what do u think of my comment to https://tickets.openmrs.org/browse/PTM-56
17:28:16 <suranga> this is a rather important design problem..
17:31:04 <james_regen> suranga: okay, i'm caught up on comments for the ticket
17:31:28 <bwolfe> djazayeri, ContextAuthenticationException and APIAuthException look very similar. I don't think we really need both
17:32:00 <bwolfe> but I think ContextAuthenticationException is supposed to be used when actually authenticating with the Context. whereas the APIAuth one is more of a "you're authenticated, not authorized"
17:32:15 <james_regen> suranga: i think forcing an upgrade would be okay. do you have an idea of how difficult it'd be to automatically move old XML configurations to the database automatically, if present?
17:33:22 <suranga> james_regen, i cant say for sure, but it will be rather hard, i guess :-)
17:34:23 <suranga> james_regen, im not very sure how the upgrade is. u mean that the module checkes if there is an xml file, and forces the user to move that data into the db, is it ?
17:34:45 <suranga> this happens only once in an implementations lifetime, right ?
17:35:45 <james_regen> suranga: yeah, if XML file is present and has strategies, then move them to the database, and remove the strategies from the XML file
17:36:54 <suranga> james_regen, i will need to look into this some more :-)
17:40:37 <wyclif> mseaton, sorry i missed your messages
17:40:54 <mseaton> wyclif, dkayiwa, djazyari et al: sorry for this, but just committed big refactor as discussed above. TokenRegistration is now CalculationRegistration, and all relevent service class names, method names, database tables, and such have been changed.
17:41:08 <wyclif> mseaton, is that when you are running it against 1.6.5
17:41:14 <mseaton> no, 1.8
17:41:26 <wyclif> ok
17:42:01 <wyclif> i will need to update the documentation page since there have been several changes
17:42:07 <mseaton> hopefully all is now well. (though I may have missed a few method names, variable names, and the like that will need cleaning up. going through that again now.) i wanted to get this commit in before too many conflicts arose
17:43:18 *** effysam has joined #openmrs
17:43:26 <wyclif> ok
17:44:01 *** anu_GSOC has joined #openmrs
17:44:53 <effysam> WHOIS effysam
17:45:50 <bwolfe> yes, who IS effysam? :-)
17:46:13 <bwolfe> mseaton, was this the 1.6 thing? Or just a general issue?
17:46:28 <wyclif> mseaton, djazayeri then i suggest we rename the TokenRegistrationService and tokenRegistrationDAO too
17:46:41 <mseaton> wyclif - done
17:46:47 <wyclif> mseaton, great
17:46:57 <mseaton> bwolfe, not sure. it might have been, but i'm testing on 1.8
17:47:31 <mseaton> we should see if dkayiwa issue now resolve
17:49:23 <downey> "Your Organization Application for "OpenMRS" in Google Summer of Code 2012 has been accepted."
17:50:06 <wyclif> mseaton, had you applied mykola's patch for admin page, because that will be a pain to apply and i think we need to make the necessary changes to it
17:50:43 <mseaton> wyclif: yes, did it all as one changeset (i ran into the need to refactor while testing mykolas patch)
17:51:13 <mseaton> i made some changes to it based on your and my code review comments (still need to apply some of your suggestions)
17:51:13 <wyclif> cool
17:51:30 <effysam> effysam is a gsoc hopeful, and really glad openmrs was accepted as a participating organisation
17:51:34 <wyclif> some of mine might have been nit picks
17:51:42 <mseaton> mine too
17:58:09 *** sgithens has joined #openmrs
17:59:45 *** anu_GSOC has quit IRC
18:02:06 *** effysam has quit IRC
18:05:39 *** sgithens has quit IRC
18:08:44 *** bwolfe has quit IRC
18:10:57 <OpenMRSBot> Recent updates in the world of openmrs: On Twitter: OpenMRS: It's official - #OpenMRS will be in Google Summer of Code again this year. Learn more: http://t.co/iMQ0OW1X #GSoC #HFOSS #ICT4D <http://twitter.com/OpenMRS/statuses/180714999394734081>
18:23:33 *** bwolfe has joined #openmrs
18:23:33 *** ChanServ sets mode: +o bwolfe
18:38:14 *** ShellZero has joined #openmrs
18:38:27 <downey> Hi ShellZero and welcome to the #openmrs IRC channel.
18:38:34 <ShellZero> hi
18:38:42 <ShellZero> thanks :)
18:38:52 *** sdan has joined #openmrs
18:39:16 <suranga> bwolfe, hi, a small observation to make.. I've just noticed that we dont seem to store lists in the database..
18:39:36 <suranga> its always sets, but never arraylists.... mm... is there a reason for this ? :-)
18:39:39 <ShellZero> downey: out of curiousity, Did open mrs got selected?
18:40:09 <suranga> ShellZero, yep, news was just announced, we are in ! :)
18:40:17 <ShellZero> great :)
18:40:33 *** kernelhunter92 has joined #openmrs
18:40:44 <bwolfe> suranga, what do you mean? an arraylist is a list
18:40:45 <downey> Hi kernelhunter92 and welcome to the #openmrs IRC channel.
18:41:00 <bwolfe> and databases don't really care about implementations of lists.
18:41:11 <suranga> bwolfe, sorry, I mean we dont seem to have stored a single arraylist in the db
18:41:23 <suranga> we always store sets...
18:41:44 <suranga> is there a particular reason for this ? :)
18:41:59 *** r0bby has quit IRC
18:42:16 *** r0bby has joined #openmrs
18:42:16 *** ChanServ sets mode: +v r0bby
18:42:42 <bwolfe> ah, so you mean sets vs arraylists before
18:43:07 <bwolfe> hibernate doesn't deal with lists well
18:43:12 <bwolfe> it expects a column to define the order
18:43:21 <bwolfe> and we didn't want to add an extra column
18:43:24 <bwolfe> so we just use sets
18:45:06 *** harshadura has joined #openmrs
18:48:00 *** mnunez has joined #openmrs
18:49:22 <suranga> bwolfe, thanksss... it is as I suspected ! actually i spent the entire day trying to work out how to get rid of that extra column
18:49:26 <suranga> thanks bwolfe !
18:49:32 * suranga goes to look
18:55:04 *** effysam has joined #openmrs
18:55:43 <effysam> lastlog
19:03:49 <bwolfe> downey, only 46 orgs this year??
19:04:21 <harshadura> Voila! OpenMRS has accepted as a GSoC mentoring Org this year too!! :)
19:04:44 <harshadura> time to party :D
19:05:13 <downey> bwolfe: i doubt it
19:05:16 <downey> where do you see that
19:05:31 <bwolfe> the page that carol just sent out
19:05:36 <bwolfe> http://www.google-melange.com/gsoc/program/accepted_orgs/google/gsoc2012
19:05:43 <OpenMRSBot> <http://ln-s.net/9omr> (at www.google-melange.com)
19:05:47 <bwolfe> wait, now 48 orgs
19:05:59 <downey> bwolfe: that's dynamically updated as orgs fill out their profiles today
19:06:09 <bwolfe> I see
19:06:16 <bwolfe> some peeps are slow I guess
19:06:27 <downey> well, it's only 6 minutes after the announced time :D
19:08:25 *** james_regen has quit IRC
19:09:19 <harshadura> i didnt notice how many slots available to OpenMRS this year, any idea bwolfe, downey?
19:09:33 <bwolfe> OVER 9000!!!!!!!!!!11!!1
19:09:33 <downey> harshadura: that info is not yet available
19:09:38 <downey> heh
19:09:41 <bwolfe> or that
19:10:01 <downey> bwolfe: The list of participating organisations only shows those that have filled in their organisation profile, so it will slowly reach 175 as that's done. The list is very incomplete at the moment because not all accepted organisations have done that yet. If your org isn't on there you can check if it's been accepted by asking the person who submitted the application.
19:14:11 <harshadura> fine :)
19:18:50 *** harshadura has quit IRC
19:25:31 *** mvorobey has joined #openmrs
19:33:44 <mvorobey> mseaton, hi, Mike, thanks for applying the patch on CALC-26 :) sorry for forcing you to make additional changes on that, I'm going to do it better next time :)
19:34:28 <mseaton> mvorobey: patch was good. most of my changes were nitpiks. the big thing i had to add was due to the openmrs bug you found yesterday with the entity not found error.
19:34:41 *** lebek has joined #openmrs
19:34:46 *** sgithens has joined #openmrs
19:34:54 <downey> Hi lebek and welcome to the #openmrs IRC channel.
19:35:01 <lebek> Hey!
19:35:51 *** effysam has quit IRC
19:36:26 <mvorobey> mseaton, yep, it was terrible bug and it annoyed me very :) but I found a workaround - I forced calculation's classes to overcome logic ones, so I was able to test admin page for token registrations :) yeah, I know that it was not the best way but it worked for me :)
19:41:15 <mvorobey> mseaton, but anyway, thanks for dealing with that bug, Mike!
19:49:12 <wyclif> mseaton, djazayeri TokenService has a couple of getRule and getRuleProvider methods that are private and i need to expose one to use from the LogicCalculationProvider, which do you prefer to expose?
19:49:35 <djazayeri> wyclif in logic?
19:49:38 <wyclif> yes
19:50:34 *** SravanthiSinha_ has joined #openmrs
19:50:39 <djazayeri> wyclif: is this relevant to the comment I made on an email saying "need to add this method"?
19:50:50 <downey> Hi SravanthiSinha_ and welcome to the #openmrs IRC channel.
19:50:53 <wyclif> yes, there is getRule(TokenRegistration), i can call this since i have the tokenRegistration
19:51:08 <djazayeri> you do have a tokenRegistration?
19:51:21 <wyclif> if i add getRuleProvider, this is going to duplicate the logic in those private methods
19:52:12 <wyclif> so am calling tokenService.getTokenRegistrationByToken(configuration); from my provider and want to call getRule(tokenRegistration)
19:52:16 *** SravanthiSinha_ has left #openmrs
19:52:32 <wyclif> that gives me back the rule
19:52:52 <djazayeri> I had been thinking that you'd add a method like getRule(String ruleProviderClassname, String ruleConfig) and make it public
19:53:45 <djazayeri> and if it's relevant you can make the existing getRule(TokenReg) call that, to avoid duplicating logic
19:53:46 *** sheahenm has joined #openmrs
19:53:56 <downey> Hi sheahenm and welcome to the #openmrs IRC channel.
19:53:59 <djazayeri> wyclif: I don't think that the CalculationRuleProvider should care about logic tokesn
19:54:11 <sheahenm> Hello all!
19:54:37 <djazayeri> wyclif: see my last email to Burke (on the dev list) about this, because we've never gotten token registration working right for logic, so I'd rather just go directly to the rule provider (from the LogicCalculationProvider)
19:55:39 *** sheahenm has quit IRC
19:55:45 <wyclif> djazayeri, this method will still have the same effect as the 2 calls i want to make
19:56:07 <lebek> Hi, I discovered OpenMRS through the GSoC announcement. I have two questions: Do you have a dedicated security person? Is there scope for a security-related GSoC project?
19:57:05 <wyclif> djazayeri, so you are saying getRule and getTokenRegistrationByToken are buggy?
19:57:15 <djazayeri> wyclif: they are not buggy
19:57:25 <djazayeri> what is buggy is registering tokens automatically
19:58:06 <djazayeri> i.e. most people running OpenMRS do not have tokens registered for all their concepts
19:58:31 <djazayeri> e.g. do a select * from logic_token_registration on your own db, and you will almost certainly _not_ see a "WEIGHT (KG)" token
19:58:58 <djazayeri> I don't want that to prevent the WEIGHT (KG) rule from being able to be run, if you were to register it as a calculation though
19:59:16 <wyclif> djazayeri, i realised that because i dont even see the one for age, name and HIVPositiveRules
20:01:06 <wyclif> djazayeri, so that means my implementation of that method just loops through all providers, finds the matching one and ask it to give me the rule instance?
20:01:27 <wyclif> i mean ruleProviders
20:02:10 <djazayeri> wyclif: the way I would do it is to have the RegisteredCalculation.calculationName be the ruleProviderClassname and RegisteredCalculation.config = the config that you pass to the ruleProvider
20:07:24 *** morristic has joined #openmrs
20:07:32 <morristic> hello openmrs world
20:07:36 <morristic> anyone around?
20:08:03 *** snoppy has joined #openmrs
20:08:36 <lebek> hey morristic
20:08:39 <snoppy> hi all!
20:08:45 <morristic> hey!
20:09:10 <snoppy> I'm a student from Ukraine.
20:09:16 <snoppy> I'd like to participate in your projects in GSoC2012. Your organization was recomended me by students from my University. They was take part in GSOC last year .
20:09:32 <snoppy> I just started Installing OpenMRS and I have a question about tomcat version. I see that last edition of "Step 3 - Install Tomcat" was on Feb 08, 2012. But u write about tomcat 6.0.29. Why? At that time tomcat relesed version 7. Can I used the latest version of tomcat to deploy OpenMRS?
20:14:10 <morristic> I am working with a professor at Johns Hopkins to help bring OpenMRS security to a level that would make production severs deployed in virtual space hippa compliant
20:14:30 <morristic> Could anyone help to go over some of the current security features available in OpenMRS with me?
20:14:55 <morristic> I am reading the wiki's now, but admittedly, I'm more medical and have little experience/knowledge on the security side.
20:14:56 <lebek> morristic: heh, this is funny. just before you arrived I was asking about OpenMRS security work
20:15:07 <morristic> hey, perfect!
20:15:17 <morristic> are you familiar with it at all?
20:16:22 <lebek> no, I just found out about the project. I've read https://wiki.openmrs.org/display/docs/Security+and+Encryption but nothing more
20:16:40 <morristic> ah ok, yeah I'm reading it, but admittedly am not sure what to make of it
20:17:16 <morristic> I'm not familiar with block cipher modes of encryption and am now reading about them at: http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation
20:17:17 <OpenMRSBot> <http://ln-s.net/3$GV> (at en.wikipedia.org)
20:17:59 <lebek> well it's a bit odd to link API docs from the developer guide, I was hoping for a more general overview of the security model
20:18:42 <morristic> yeah
20:18:59 <morristic> It would be nice to have a more accessible explanation
20:19:35 <morristic> a question that I have for instance, is can we use the block cipher method of two way encryption currently supported to encrypt the database?
20:19:40 <morristic> or just the connection to the database
20:20:17 <morristic> my current understanding is that mysql databases don't support realtime decryption of entries for querying
20:20:36 <mseaton> djazayeri: can you have a look here? https://source.openmrs.org/changelog/Modules?cs=26533
20:20:39 <morristic> i.e. an encrypted openmrs database would have to be decrypted prior to using queries
20:20:59 <morristic> so, in that model the data would be protected, only when no users are connected
20:21:12 *** ShellZero has left #openmrs
20:21:14 <morristic> when a user is connected a decrypted copy of the database would have to be available for queries
20:21:42 *** mvorobey has quit IRC
20:21:56 <morristic> while this is better than having a decrypted copy available always, this is still a security risk, especially if the record is accessed frequently.
20:22:17 <morristic> is your understanding similar to mine lebek? or anyone else who can chime in?
20:23:05 <morristic> or is there a way to have have queries encrypted/decrypted on the fly to interact with encrypted strings in the mysql database?
20:23:40 <lebek> that's possible. searching on encrypted data is a complex problem
20:24:11 <morristic> yeah, there is a group at MIT working on an variant of MySQL that supports it
20:24:21 <morristic> but my understanding is that it's only research grade right now
20:24:26 <morristic> not ready for production
20:25:04 <djazayeri> mseaton: my only comment is that I think the default implementation of preprocess should return new EvaluationInstanceData
20:25:08 <djazayeri> instead of null
20:25:16 *** sdan has quit IRC
20:25:29 <djazayeri> also, the formatting looks off. :-)
20:25:44 *** sdan has joined #openmrs
20:26:34 <mseaton> djazayeri: yeah, why does that happen w/ the formatting? re: returning new EvaluationInstanceData(), I had that originally, but then decided it was unnecessary. you can't do anything with it in the subsequent methods unless you actually implement preprocess to do something else.
20:26:53 <mseaton> and it's one extra object to instantiate
20:26:54 <lebek> morristic: I can't say much because I really know nothing of OpenMRS, but I'm interested in how they implement sharing of patient data
20:27:18 <lebek> morristic: i.e. between doctors
20:27:22 <morristic> currently we have production servers on our own steel.
20:27:28 <mseaton> djazayeri: if i run mvn clean package, will the formatter fix this?
20:27:33 <djazayeri> mseaton: hmm, true, since you combined my createInstance() and before() methods, I agree with you
20:27:38 <morristic> but implementing on virtual space would be much easier logistically and cost wise
20:27:39 <djazayeri> mseaton: I don't know if the formatter is set up for this module
20:27:59 <mseaton> djazayeri: seeing how i combined these, do you see a reason to keep them separate?
20:28:07 <djazayeri> no, I agree with your choice
20:28:11 <lebek> morristic: what do you mean by virtual space? virtual address space?
20:28:12 <djazayeri> and I agree that returning null is fine
20:28:22 <djazayeri> mseaton: at least control-shift-F is better than nothing
20:28:37 <morristic> lebek: I mean on a VPS or Amazon EC2 server, etc.
20:28:52 <mseaton> djazayeri: could actually leave EvaluationInstanceData an interface, and let classes create an Inner Class implementation that had fields they need
20:28:52 <lebek> morristic: oh ok
20:29:20 <mseaton> could even be an anonymous inner class.
20:29:31 <mseaton> (actually, no it couldn't)
20:29:34 <djazayeri> mseaton: probably a good idea
20:29:48 <djazayeri> I think impls could make it a public inner class
20:29:48 <lebek> morristic: is this a research project?
20:29:49 <morristic> we would need the database to always remain encrypted on the server, because we don't control the physical hardware.
20:30:04 <morristic> it's a translational project
20:30:06 <mseaton> djazayeri: yeah, i'd rather do that and have a "getXYZ()" then have to cast a result back from a Map
20:30:55 <morristic> lebek: we are currently implementing openmrs at free clinics for underserved patients in baltimore
20:31:10 <morristic> at the same time, we are exploring better ways to store and secure their data.
20:31:30 *** sdan has quit IRC
20:32:17 <lebek> morristic: I see, interesting. and you want HIPPA compliance before moving data into the cloud?
20:32:26 <morristic> exactly
20:32:43 <morristic> here is the MIT project: http://css.csail.mit.edu/cryptdb/
20:32:53 <morristic> but like I said, not production yet.
20:33:08 <lebek> I'm involved in another project https://tahoe-lafs.org/trac/tahoe-lafs which is all about storing data with an untrusted cloud provider
20:33:29 <morristic> interesting. I will definitely take a look
20:35:18 <lebek> it's a filesystem rather than a database, so perhaps of little use to you, but it's an excellent model for provider-independent security
20:35:46 <morristic> lebek: i'd love to talk about it more, but have to run to a meeting. you can email me at michael.morris@networkinghealth.org
20:36:01 <morristic> or anyone else that has useful security info for OpenMRS and is logging the chat.
20:36:06 <morristic> talk to you later!
20:36:11 *** morristic has left #openmrs
20:50:00 *** bwolfe has quit IRC
20:50:04 *** bwolfe has joined #openmrs
20:50:04 *** ChanServ sets mode: +o bwolfe
20:51:46 *** kernelhunter92 has left #openmrs
20:54:24 *** bwolfe has quit IRC
21:07:34 *** piyush_ has joined #openmrs
21:07:49 <downey> Hi piyush_ and welcome to the #openmrs IRC channel.
21:10:16 <suranga> nribeka, helloo
21:10:26 <nribeka> yo suranga boy
21:10:43 <suranga> hi nribeka long time no see big brother
21:11:04 <suranga> big brother, Im kinda moving into your old project :-)
21:11:28 <suranga> I had mailed you asking for votes on potential ideas.... :-)
21:14:19 <nribeka> hahahaha ...
21:14:24 <nribeka> you mailed me?
21:14:38 <nribeka> i'm pretty sure you can do it suranga boy
21:14:42 <nribeka> you're smart boy
21:14:44 <nribeka> hahahaha ...
21:14:44 <nribeka> :D
21:15:39 <suranga> nribeka, not very... I just pretend to be smart.. I flip a coin for most of the answers :P
21:16:56 *** mvorobey has joined #openmrs
21:16:59 <nribeka> well that's not random enough ...
21:17:04 *** piyush_ has quit IRC
21:17:13 <nribeka> need to go suranga boy. will online a bit later
21:17:16 <nribeka> c u boy
21:17:26 <suranga> sure win, catch u later :-)
21:18:02 *** downey_ has joined #openmrs
21:18:02 *** ChanServ sets mode: +o downey_
21:18:08 *** downey has quit IRC
21:18:08 *** downey_ is now known as downey
21:18:15 *** mvorobey has quit IRC
21:21:35 *** bryq has joined #openmrs
21:21:35 *** ChanServ sets mode: +v bryq
21:21:36 *** nribeka has quit IRC
21:35:37 <mseaton> see you all monday...
21:35:52 *** mseaton has left #openmrs
21:43:08 *** suranga has quit IRC
21:44:17 *** mseaton has joined #openmrs
21:44:37 *** mseaton has left #openmrs
21:47:07 *** r0bby has quit IRC
21:55:39 *** mnunez has left #openmrs
21:59:25 *** magiclko has quit IRC
22:08:58 *** effysam has joined #openmrs
22:22:41 *** bryq has quit IRC
22:25:51 *** effysam has quit IRC
22:37:26 *** wyclif has quit IRC
22:44:33 *** lebek has quit IRC
22:49:13 *** downey has quit IRC
22:52:43 *** morristic has joined #openmrs
23:02:51 *** nribeka has joined #openmrs
23:02:51 *** ChanServ sets mode: +v nribeka
23:36:16 *** snoppy has quit IRC
23:36:49 *** morristic has quit IRC
23:54:42 *** wyclif has joined #openmrs