IRC Chat : 2012-01-13 - OpenMRS

01:11:09 <deadpool_> djazayeri: do you use date objects or do you use calendar objects for openmrs and when storing in the database convert it to a date object?
01:11:40 <djazayeri> deadpool_: we use calendar objects for any conversions or calculations
01:11:47 <djazayeri> when passing things around we typically leave them as dates.
01:12:33 <deadpool_> so you always convert then
01:12:43 <djazayeri> deadpool_: what do you mean?
01:12:58 <deadpool_> so i am trying to save a date in openmrs
01:13:15 <deadpool_> but the date object is not as formidable as the calendar object
01:13:50 <deadpool_> i have to do some math on the outside while there are built in functions with the calendar object that make it easier to manipulate
01:14:00 <deadpool_> i am just wondering what the convention is in openmrs
01:14:18 <djazayeri> the convention is to store dates in the DB, and if you need to operate on it, use Calendar.
01:15:30 <deadpool_> ah ok
01:24:40 *** morristic has joined #openmrs
01:27:15 <deadpool_> djazayeri: quick question again if i want to do a database hibernate query by userid do i use user.userid or user.personid?
01:27:26 <djazayeri> user.userId
01:27:34 <djazayeri> user.personId is something else.
01:27:38 <djazayeri> i.e. it's the FK to person
01:28:26 <deadpool_> so what is the purpose of user.personId for a user?
01:35:27 <djazayeri> deadpool_: lets you look at the underlying person record to see what their name, age, sex, etc, is
01:36:14 <deadpool_> ah
02:16:42 <deadpool_> djazayeri: is there an easy way to migrate to annotation based controllers from the moduleapplication context?
02:17:13 <djazayeri> deadpool_: nothing automated that I know of
02:17:40 <deadpool_> djazayeri: not automated i mean a pretty good reference i was looking on openmrs but i don't see anythign
02:18:02 <djazayeri> deadpool_: I don't know of one
02:18:05 <djazayeri> sorry
02:18:08 <djazayeri> (gotta run now to dinner)
02:18:26 <deadpool_> djazayeri: fair enough thanks for you help
02:47:29 *** wyclif has joined #openmrs
03:07:17 *** deadpool_ has quit IRC
03:20:32 *** upul` has joined #openmrs
03:20:32 *** ChanServ sets mode: +v upul`
03:22:12 <wyclif> hi djazayeri
04:00:45 *** alex10791_ has joined #openmrs
04:01:22 *** alex10791_ has left #openmrs
04:12:11 *** lh has joined #openmrs
05:14:14 *** lh_ has joined #openmrs
05:16:15 *** lh has quit IRC
05:16:16 *** lh_ is now known as lh
05:21:58 <djazayeri> hi wyclif
05:36:03 *** lh_ has joined #openmrs
05:38:23 *** lh has quit IRC
05:38:23 *** lh_ is now known as lh
05:42:34 *** lh has quit IRC
05:48:51 *** sunbiz has joined #openmrs
05:48:51 *** ChanServ sets mode: +v sunbiz
06:32:22 *** lh has joined #openmrs
06:32:33 *** lh has joined #openmrs
06:51:01 *** dkayiwa has joined #openmrs
07:30:01 *** sunbiz has left #openmrs
07:30:42 *** dkayiwa has quit IRC
07:30:56 *** dkayiwa has joined #openmrs
07:32:49 *** djazayeri has quit IRC
08:01:04 *** robbyoconnor has quit IRC
08:15:41 *** robbyoconnor has joined #openmrs
08:15:41 *** ChanServ sets mode: +v robbyoconnor
08:17:02 *** bwolfe has joined #openmrs
08:17:02 *** ChanServ sets mode: +o bwolfe
08:23:41 *** upul` has quit IRC
08:31:12 *** bryq has joined #openmrs
08:31:12 *** ChanServ sets mode: +v bryq
08:58:16 *** bwolfe has quit IRC
09:09:58 *** bryq has left #openmrs
09:10:54 *** surangak has joined #openmrs
09:29:39 *** ningosi has joined #openmrs
09:32:30 *** surangak has quit IRC
09:38:34 *** rafa has joined #openmrs
09:38:34 *** ChanServ sets mode: +v rafa
09:40:31 *** ningosi has quit IRC
09:43:18 *** ningosi has joined #openmrs
10:04:20 *** ningosi has quit IRC
10:04:31 *** lh has quit IRC
10:37:59 <dkayiwa> hi rafa
10:38:07 <rafa> hi dkayiwa
10:38:36 <dkayiwa> rafa: as for META-175 should i make the base class for BaseShareScenarioTest be MetadataSharingBaseTest?
10:39:40 <rafa> dkayiwa: ha, you're the spring hero! :D
10:39:54 <dkayiwa> rafa: lolllll not at all
10:39:56 <dkayiwa> :)
10:39:58 <rafa> dkayiwa: you took the last should ticket :D
10:40:15 <dkayiwa> rafa: i had no other option :)
10:41:27 <rafa> dkayiwa: how about BaseSharingScenariosTest?
10:41:41 <dkayiwa> rafa: that is the one am building
10:42:01 <dkayiwa> as per META-175
10:42:12 <rafa> dkayiwa: sorry, yes, do you want to name it differently or what?
10:42:57 <dkayiwa> rafa: no. i was simply asking how i reuse Ben's work because it depends on META-174
10:43:06 <rafa> dkayiwa: ohh right ;D
10:43:37 <rafa> dkayiwa: so Ben created a framework that simulates two OpenMRS servers
10:43:44 <dkayiwa> rafa: ok
10:44:08 <rafa> dkayiwa: this way you just say what happens on the exporting server and what happens on the importing server
10:44:20 <dkayiwa> rafa: so how do i reuse that framework? do i just subclass one of his classes?
10:44:36 <rafa> see PreserveConceptIdsTest
10:44:44 <dkayiwa> rafa: ok
10:45:50 <rafa> dkayiwa: in a method importPackageToEmptyServer you just create a package from getItemsOnExportServer and then import it to an empty server
10:46:51 <rafa> dkayiwa: you'll create the package returning getItemsOnExportServer from runOnExportServer method and verify if it's properly imported in runOnImportServerAfterImport
10:47:16 <rafa> dkayiwa: It's really easy with what Ben has created
10:48:19 <dkayiwa> rafa: so how do i use Ben's framework? do i subclass one of his classes? or just copy and paste his methods?
10:48:40 <dkayiwa> rafa: that is what i have not understood
10:48:59 <rafa> dkayiwa: you just copy & paste shouldPreserveConceptIdAcrossServers to importPackageToEmptyServer
10:49:07 <dkayiwa> rafa: ok
10:49:08 <rafa> dkayiwa: and change what happens in methods
10:49:45 <rafa> runOnExportServer, runOnImportServerBeforeImport, runOnImportServerAfterImport, modifyImportedPackage
10:49:58 <dkayiwa> rafa: ok
10:50:24 <rafa> dkayiwa: so yes for that to work you need BaseSharingScenariosTest to extend MetadataSharingBaseTest
10:50:52 <dkayiwa> rafa: thats exactly what i was asking :)
10:51:09 <dkayiwa> rafa: thanks
10:51:16 <rafa> dkayiwa: you're welcome :)
10:52:15 <dkayiwa> rafa: sorry for asking many questions. it is a result of one time when i wasted the whole day going a wrong route when i should have first asked to confirm what i was doing :D
10:53:34 <rafa> dkayiwa: it wasn't wasted then, you still learned something :D
10:53:54 <dkayiwa> rafa: hahahahha!!!! what a consolation!!! :D
10:55:09 <rafa> dkayiwa: I need to go offline for a while so I'll answer your possible question now :D
10:55:34 <dkayiwa> rafa: i do not have any for now. if i get them, will ask you when yo back
10:56:30 <rafa> dkayiwa: in importPackageOverwritingItemsMatchByUuids you need to modify confict resolutions in the modifyImportedPackage method
10:56:50 <dkayiwa> rafa: ok
10:57:18 <rafa> dkayiwa: you'll just iterate over ImportedPackage.getImportedItems() and set import mode to overwrite whenever uuids are the same
10:57:27 <dkayiwa> rafa: ok
10:58:26 <rafa> dkayiwa: that is if (Handler.getUuid(ImportedItem.getExisting()).equals(Handler.getUuid(ImortedItem.getIncoming())))
10:58:43 <rafa> dkayiwa: then ImportedItem.setImportType(ImportType.OVERWRITE);
10:58:43 <dkayiwa> rafa: ok
10:58:47 <rafa> dkayiwa: something like that
10:58:52 <rafa> dkayiwa: okay ttyl
10:58:53 <dkayiwa> rafa: ok
10:59:00 <dkayiwa> rafa: :)
10:59:16 *** rafa has quit IRC
11:45:43 *** bryq has joined #openmrs
11:45:43 *** ChanServ sets mode: +v bryq
11:50:55 *** mathiaslin has joined #openmrs
11:59:43 *** james_regen has joined #openmrs
11:59:43 *** ChanServ sets mode: +v james_regen
12:07:50 *** rafa has joined #openmrs
12:07:50 *** ChanServ sets mode: +v rafa
12:32:33 <dkayiwa> hi rafa
12:32:56 <dkayiwa> rafa: i do not seem to see ImportType.OVERWRITE
12:34:40 *** wyclif has quit IRC
12:39:57 *** rafa_ has joined #openmrs
12:39:57 *** ChanServ sets mode: +v rafa_
12:42:44 *** rafa has quit IRC
12:50:57 *** dkayiwa has quit IRC
12:51:37 *** rafa has joined #openmrs
12:51:37 *** ChanServ sets mode: +v rafa
12:53:32 *** rafa_ has quit IRC
12:56:14 *** rafa has quit IRC
12:57:39 *** rafa has joined #openmrs
12:57:39 *** ChanServ sets mode: +v rafa
12:57:45 *** dkayiwa has joined #openmrs
12:57:45 *** rafa_ has joined #openmrs
12:57:45 *** ChanServ sets mode: +v rafa_
13:08:50 *** rafa has quit IRC
13:18:15 *** mathiaslin has quit IRC
13:42:44 *** wyclif has joined #openmrs
14:03:11 *** wyclif has quit IRC
14:09:38 *** wyclif has joined #openmrs
14:13:32 *** wyclif has quit IRC
14:13:37 *** wyclif has joined #openmrs
14:15:43 *** maurya has joined #openmrs
14:29:30 <dkayiwa> hi rafa_
14:29:35 <rafa_> dkayiwa: hi
14:30:03 <dkayiwa> rafa_: should i go for the remaining non essential ticket META-115 as i wait for your review comments?
14:30:42 <rafa_> dkayiwa: It's similar to META-127
14:30:56 <rafa_> dkayiwa: there's some sort of problem with class loading
14:31:05 <dkayiwa> rafa_: oh i see
14:31:17 <rafa_> dkayiwa: probably solving META-127 will solve META-115
14:31:35 <dkayiwa> rafa_: problem is it not easily reproducible :(
14:31:43 <rafa_> dkayiwa: yeah :/
14:32:17 <dkayiwa> rafa_: if the reporter can at least tell us how we can reliably reproduce it!!!
14:32:41 <rafa_> dkayiwa: the thing is the reporter can't tell us :)
14:32:54 <rafa_> dkayiwa: it happens sporadically
14:33:01 <dkayiwa> rafa_: ok :D
14:33:21 <dkayiwa> rafa_: let me just respond to your review comments in the meantime :)
14:33:44 <rafa_> dkayiwa: but it's not a blocker
14:34:01 <dkayiwa> rafa_: the ticket?
14:34:09 <rafa_> dkayiwa: yes
14:34:15 <dkayiwa> rafa_: correct
14:34:43 <rafa_> dkayiwa: let me look more into your code review
14:35:06 <dkayiwa> rafa_: yes i have already seen your initial comments :)
14:35:08 <rafa_> dkayiwa: after META-175 you've cleared all sprint ticket and can work on something else
14:35:18 <dkayiwa> rafa_: ok
14:35:18 <rafa_> dkayiwa: like 1.9 tickets :)
14:35:26 <dkayiwa> rafa_: 8)
14:48:14 *** Mkop has quit IRC
14:48:38 *** wyclif has quit IRC
14:58:28 <dkayiwa> hi rafa_
14:58:54 <rafa_> hi :)
14:59:14 <dkayiwa> rafa_: there is a comment where you said "it should be empty". what does that mean?
14:59:14 <rafa_> did you get the overall idea?
14:59:35 <rafa_> rafa_: nothing happens there as it's empty server
14:59:36 <dkayiwa> rafa_: somehow :)
14:59:51 <dkayiwa> rafa_: meaning i should leave the method empty?
14:59:59 <rafa_> dkayiwa: yeah
15:00:06 <dkayiwa> rafa_: ok thanks :)
15:00:26 <rafa_> dkayiwa: empty server = empty method :D
15:00:36 <dkayiwa> rafa_: :D
15:08:21 <dkayiwa> hi rafa_
15:08:28 <dkayiwa> rafa_: in onImportServerAfterImport how do i get the existing?
15:13:52 <rafa_> dkayiwa: the incoming is in getItemsOnExportServer, the exsiting is in getItemsOnImportServer
15:14:04 <rafa_> dkayiwa: the merged should be in the db
15:14:16 <dkayiwa> rafa_: oh thanks
15:16:21 <dkayiwa> rafa_: doesnt getItemsOnImportServer get items from the database?
15:17:52 <dkayiwa> rafa_: and in that case, wouldn't that mean the merged and getItemsOnImportServer are referring to the same object?
15:19:20 <rafa_> dkayiwa: nope
15:19:35 <rafa_> dkayiwa: getItemsOnImportServer must not return an item from the db
15:19:50 <dkayiwa> rafa_: where does it get them from?
15:19:58 <rafa_> dkayiwa: instantiates
15:20:09 <rafa_> dkayiwa: with new :)
15:20:26 <dkayiwa> rafa_: oh it hardcodes them?
15:20:32 <rafa_> dkayiwa: yes
15:20:42 <dkayiwa> rafa_: as they should be when imported successfully ?
15:20:57 <rafa_> dkayiwa: no
15:21:04 <dkayiwa> rafa_: oh :0
15:21:06 <dkayiwa> :)
15:21:27 <rafa_> dkayiwa: it's suppose to represent an item that is already on the import server
15:21:42 <rafa_> dkayiwa: it'll be overwritten with the incoming item
15:21:44 <dkayiwa> rafa_: ok
15:24:14 *** wyclif has joined #openmrs
15:24:33 *** dkayiwa has quit IRC
15:28:04 *** Mkop has joined #openmrs
15:28:04 *** ChanServ sets mode: +v Mkop
15:34:35 *** djazayeri has joined #openmrs
15:34:35 *** ChanServ sets mode: +o djazayeri
16:47:23 *** maurya has quit IRC
16:54:44 *** wyclif has quit IRC
17:09:29 *** wyclif has joined #openmrs
17:26:06 *** rafa_ has quit IRC
17:53:23 *** wyclif has quit IRC
17:56:46 *** dawn_ has joined #openmrs
17:57:22 *** surangak has joined #openmrs
18:00:33 <dawn_> !scrumon dawn
18:00:33 * 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.
18:00:50 <dawn_> djazayeri: i guess we need to find ben and wyclif
18:01:10 <djazayeri> since dkayiwa and rafa already emailed out their updates...
18:02:16 <dawn_> djazayeri: do you just want to email yours and keep all the updates in that thread?
18:02:43 <djazayeri> sure, that's easier, and we're not going to discuss much without the sprint leader, and with time running late for ben.
18:02:47 *** bwolfe has joined #openmrs
18:02:47 *** ChanServ sets mode: +o bwolfe
18:03:06 <djazayeri> dawn_: one thought: we should re-poll the team about the time they want to do the scrums.
18:03:23 <djazayeri> I believe the times we've chosen don't actually work for dkayiwa, but he was too shy to say so.
18:03:26 <bwolfe> friday night is just bad. :-)
18:03:42 <bwolfe> djazayeri, friday sundown to saturday sundown he doesn't do any work
18:03:55 <dawn_> djazayeri: sure. i'll send out a doodle poll with a schedule for the week, and we can go from there
18:04:01 <bwolfe> so we'd have to do at latest 5pm EAT...which works for me starting next week
18:04:18 <dawn_> bwolfe: can you email your updates in the same thread daniel and rafal made so we can keep it all in one place?
18:04:23 <djazayeri> bwolfe: I think it may be more than Friday that he has trouble making the scrums at the scheduled time.
18:04:27 <dawn_> !scrumoff dawn
18:04:27 * 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.
18:04:30 <djazayeri> anyway, yeah, dawn, please email.
18:04:32 <bwolfe> sure...
18:04:43 <dawn_> bwolfe: thanks!
18:06:23 *** wyclif has joined #openmrs
18:06:39 <wyclif> hey
18:06:48 *** wyclif has quit IRC
18:07:00 <dawn_> wyclif: we're just going to email updates in the thread rafal and daniel already started rather than listing them here
18:07:03 *** wyclif has joined #openmrs
18:10:05 <wyclif> hello
18:10:14 <wyclif> djazayeri, bwolfe are are scrumming?
18:10:20 <wyclif> djazayeri, bwolfe are we scrumming?
18:10:45 <djazayeri> wyclif: see what dawn said
18:10:58 <wyclif> djazayeri, i see nothing
18:11:38 <djazayeri> wyclif:  we're just going to email updates in the thread rafal and daniel already started rather than listing them here
18:11:45 <djazayeri> i.e. just reply to the email thread.
18:11:50 <wyclif> djazayeri, cool, thanks
18:11:57 <djazayeri> if you have a particular blocker or discussion point, raise it here
18:12:08 <djazayeri> but with no rafal, it's tough.
18:12:14 <wyclif> djazayeri, looks like the replace button is broken
18:12:29 <djazayeri> but others work?
18:12:32 <djazayeri> is there a stack trace?
18:12:36 <djazayeri> or is it a js error?
18:12:41 <wyclif> djazayeri, javascript errors
18:12:56 <djazayeri> you've done a recent svn update, I assume?
18:13:02 <wyclif> djazayeri, unescaped characters
18:13:32 <wyclif> djazayeri, missing } after property list
18:13:32 <wyclif> [Break On This Error]
18:13:32 <wyclif> ...'Choose replacement for: '&lt;h:handle object=\&quot;org.openmrs.Field@3b23f2d9\...
18:13:32 <wyclif> assess...s=false (line 297, col 48)
18:13:32 <wyclif>
18:13:54 <wyclif> djazayeri, see the full colon and semi colon?
18:14:38 <djazayeri> not exactly
18:15:00 <djazayeri> look at the svn history on the jsp page and see if someone changed it recently
18:18:19 *** lh has joined #openmrs
18:18:28 *** lh has joined #openmrs
18:36:49 <wyclif> djazayeri, thanks, i probaly need to do an svn update, there is a fix that was made
18:51:32 *** dawn_ has quit IRC
19:20:30 *** surangak has quit IRC
19:30:47 *** djazayeri has quit IRC
19:30:54 *** djazayeri has joined #openmrs
19:30:54 *** ChanServ sets mode: +o djazayeri
20:01:05 *** james_regen has left #openmrs
20:26:51 *** dawn_ has joined #openmrs
20:40:15 <wyclif> hi djazayeri
20:40:21 <djazayeri> hi wyclif
20:40:52 <wyclif> djazayeri, is there a way to do update an imported item using downloaded packages?
20:41:08 <djazayeri> could you be more specific?
20:41:17 <djazayeri> I don't understand
20:42:16 <wyclif> djazayeri, imagine i create a package on one server, imported on another and i edit the item on the orginal server and wish to apply the update on the other with another package
20:43:02 <djazayeri> wyclif: have you seen the publish/subscribe functionality?
20:43:51 <djazayeri> The first server would need to create a new "version" of that package, and the second server would need to check its subscription.
20:43:58 <djazayeri> Is that what you mean?
20:49:39 <wyclif> djazayeri, so all i need is to change the version number, right?
20:50:03 <djazayeri> there's a UI for "create a new version from existing" or "create a new version from scratch"
20:50:20 <djazayeri> if you've modified an existing metadata you can just do "create a new version from existing" and that will start with the same items pre-selected.
20:52:16 <wyclif> djazayeri, so if i create a new package with changes that wont update, right
20:52:25 <wyclif> i have to edit an existing package?
20:52:31 <djazayeri> wyclif: not automatically via a subscription
20:52:41 <djazayeri> that's what we're talking about right?
20:52:58 <djazayeri> if you export a new version of the same item in a different package, and import that, it should still happen.
20:53:23 <djazayeri> I mean: that should overwrite the item you imported before, assuming you choose "overwrite"
20:54:29 *** lh has quit IRC
20:57:01 <wyclif> djazayeri, let me try that, yes i meant not automatically via subcription
21:25:15 *** lh has joined #openmrs
21:35:40 *** bwolfe has quit IRC
21:58:50 *** lh has quit IRC
22:20:09 *** bryq has quit IRC
22:25:32 *** wyclif has quit IRC
22:35:35 *** lh has joined #openmrs
22:39:04 *** lh has quit IRC
23:29:51 *** djazayeri1 has joined #openmrs
23:31:56 *** djazayeri has quit IRC
23:59:20 *** wyclif has joined #openmrs