IRC Chat : 2009-02-24 - OpenMRS

00:13:25 *** [mharrison] has joined #openmrs
01:34:36 *** isurundt has joined #openmrs
01:35:20 *** isurundt has quit IRC
01:35:43 *** mib_4226k9 has joined #openmrs
01:35:45 *** mib_4226k9 has left #openmrs
01:36:03 *** isurundt has joined #openmrs
01:50:43 *** nribeka has quit IRC
01:59:33 *** Keelhaul|afk has joined #openmrs
02:06:18 <r0bby_> isurundt: talk here
02:18:08 *** Keelhaul has quit IRC
02:31:31 *** [mharrison] has quit IRC
02:37:51 *** bwolfe has joined #openmrs
02:37:57 *** ChanServ sets mode: +o bwolfe
02:41:08 <Keelhaul|afk> [00:06:57] <@bwolfe> Keelhaul: you'll have to convert each different "layer" in the hierarchy to a normal location and they all get new location ids ?
02:41:19 <Keelhaul|afk> yea, but there's also a room_id field in the encounter table
02:41:30 <Keelhaul|afk> which will be some random location_id after the conversion
02:42:02 <Keelhaul|afk> i just hope the stuff gets into trunk soon enough so i can convert my module before any implementers get to use it
02:44:43 <bwolfe> Keelhaul|afk: it should be soon
02:44:55 *** Keelhaul|afk is now known as Keelhaul
02:44:55 <bwolfe> as soon as darius agrees we don't need a new table :-p
02:45:00 <Keelhaul> lol
02:49:21 <isurundt> ben:i tried to run liquibase- generate-sql from ant.I 'm getting following exception
02:49:42 <isurundt> "F:\build.xml:626: liquibase.exception.ValidationFailedException: Validation Failed:"
02:50:10 <bwolfe> isurundt: thats not good :-/
02:50:57 <bwolfe> isurundt: have you added anything to the update-to-latest.xml file? Or do you have a clean checkou ?
02:50:59 <isurundt> ben:whatst the readon for this
02:51:00 <bwolfe> *checkout
02:51:18 <bwolfe> readon? not sure what you mean
02:51:48 <isurundt> *reason
02:51:54 <isurundt> :
02:52:24 <bwolfe> isurundt: its for people that can't run the initialization wizard in the war file
02:52:47 <bwolfe> isurundt: to create your database you should just be able to drop the war file into tomcat and then go to localhost:8080/openmrs
02:59:20 <bwolfe> isurundt: are you trying to set up your database ?
03:02:35 * r0bby_ dances
03:02:43 <r0bby_> bwolfe: finally grok property editors :D
03:03:03 <r0bby_> Wrote one for converting GroovyForm (the data type for the forms system i designed)
03:03:03 <bwolfe> r0bby_: nice
03:03:06 <r0bby_> :x
03:03:22 <r0bby_> I basically wrote a forms system from the ground up, probably why i've hit so many road blocks
03:03:28 <r0bby_> mine is free of any data base
03:03:29 <bwolfe> r0bby_: they aren't too hard once you figure out their purpose...which isn't as much as you would think :-p
03:03:41 <r0bby_> yeh
03:03:45 <r0bby_> I know
03:03:46 <bwolfe> so it just saves to the filesystem ?
03:03:51 <r0bby_> yup
03:03:55 <r0bby_> via xstream
03:04:00 <r0bby_> The idea is simple
03:04:15 <r0bby_> zip up a form directory, drop it in a running system, voila :)
03:04:36 <r0bby_> I'm busy writing controllers right now :x
03:04:55 <bwolfe> controllers in groovy ?
03:05:00 <r0bby_> yup :)
03:05:08 *** [mharrison] has joined #openmrs
03:05:23 <r0bby_> @Override
03:05:23 <r0bby_> protected Map<String, Object> referenceData(HttpServletRequest request, Object obj, Errors err) throws Exception {
03:05:26 <r0bby_> return [:]
03:05:27 <r0bby_> teeheee
03:05:30 <r0bby_> }
03:05:32 <r0bby_> :)
03:05:40 <r0bby_> groovyniess
03:05:48 <r0bby_> I find coding in groovy easier
03:05:55 <r0bby_> my editor is in groovy too.
03:06:03 <r0bby_> gives me more freedom
03:06:09 <r0bby_> ex) I can switch on anything pretty much
03:06:21 <r0bby_> null is false so no if(foo != null)
03:06:26 <r0bby_> I just do if(foo)
03:07:58 <r0bby_> everything except the activator is in groovy
03:09:41 <bwolfe> heh, couldn't get that to work ?
03:10:44 <r0bby_> nope
03:10:50 <r0bby_> I didn't want to try
03:20:33 <r0bby_> I had a lot of unnecessary exceptions
03:24:58 <Keelhaul> gn
03:24:59 *** Keelhaul has quit IRC
03:25:34 <r0bby_> I am incredibly anal about formatting :x
03:26:39 <r0bby_> http://dev.openmrs.org/browser/openmrs-modules/groovyforms/src/org/openmrs/module/groovyforms/propertyeditor/GroovyFormEditor.groovy?rev=6969
03:26:42 <OpenMRSBot> <http://ln-s.net/2uMw> (at dev.openmrs.org)
03:26:42 <r0bby_> the editor
03:27:15 *** isurundt[2] has joined #openmrs
03:28:15 *** isurundt has quit IRC
03:28:24 *** isurundt[2] has left #openmrs
03:28:26 *** nribeka has joined #openmrs
03:28:39 *** isurundt[2] has joined #openmrs
03:28:53 *** isurundt[2] has left #openmrs
03:29:36 *** isurundt has joined #openmrs
03:31:13 <isurundt> ben:i also deployed the openmrs.war in tomcat, but i cannot start the application. it says "FAIL - Application at context path /openmrs could not be started"
03:32:17 <bwolfe> isurundt: what is in your tomcat logs
03:32:37 <bwolfe> isurundt: look in tomcathome/logs/stdout____.
03:33:13 <bwolfe> (or if on linux, catalina.out)
03:39:20 * r0bby_ growls
03:39:25 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6969]: groovyforms: some misc. changes. <http://dev.openmrs.org/changeset/6969>
03:44:30 <r0bby_> I wonder if Barnes and Noble has Pro Spring 2.5
03:44:44 <r0bby_> could use it
03:44:46 <r0bby_> :/
03:46:12 *** bwolfe has quit IRC
04:16:12 *** isurundt has quit IRC
08:24:05 *** Nzeyi has joined #openmrs
08:33:47 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Wiki: WorkingGroups <http://openmrs.org/wiki/WorkingGroups>
08:52:02 *** Nzeyi has quit IRC
11:18:44 *** Knoll_Frank has joined #openmrs
11:20:43 *** Knoll_Frank has quit IRC
12:33:37 *** james_regen has joined #openmrs
12:33:37 *** ChanServ sets mode: +v james_regen
13:35:13 *** Echidna_ has quit IRC
13:37:00 *** bwolfe has joined #openmrs
13:37:00 *** ChanServ sets mode: +o bwolfe
13:44:55 *** Echidna has joined #openmrs
14:02:40 *** OpenMRSBot was kicked by bwolfe (bwolfe)
14:02:40 *** OpenMRSBot has joined #openmrs
14:02:40 *** ChanServ sets mode: +o OpenMRSBot
14:56:42 *** atomicturtle has joined #openmrs
14:56:57 *** atomicturtle has left #openmrs
15:08:29 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6975]: chica: add logging info in fillUnfinishedStates() for TF monitor task … <http://dev.openmrs.org/changeset/6975> || OpenMRS Changesets: Changeset [6974]: atd: changed version number and link to last revision of openmrs api <http://dev.openmrs.org/changeset/6974> || OpenMRS Changesets: Changeset [6973]: atd: call init() method for TeleformMonitor Task before execute(). If … <http://dev.openmrs.org/changeset/6973> || OpenMRS Changesets: Changeset [6972]: dss: changed version number and link to last revision of openmrs api <http://dev.openmrs.org/changeset/6972> || OpenMRS Changesets: Changeset [6971]: sockethl7listener: changed version number and link to last revision of … <http://dev.openmrs.org/changeset/6971> || OpenMRS Changesets: Changeset [6970]: openmrs-logic:Merging trunk into branch [6929]:[6968] <http://dev.openmrs.org/changeset/6970>
15:51:22 *** OpenMRSBot has joined #openmrs
15:51:24 *** ChanServ sets mode: +o OpenMRSBot
16:36:28 *** nribeka has left #openmrs
16:55:09 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6978]: chica: changed installer to 1.7 <http://dev.openmrs.org/changeset/6978> || OpenMRS Tickets: Ticket #1254 (enhancement closed): Add Ability to Edit User Properties <http://dev.openmrs.org/ticket/1254#comment:3> || OpenMRS Changesets: Changeset [6977]: Added ability to manage user properties from the webapp - #1254 Author: … <http://dev.openmrs.org/changeset/6977>
17:59:12 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6979]: atd: changed to OpenmrsClassLoader.getInstance().loadClass(className) in … <http://dev.openmrs.org/changeset/6979>
18:31:14 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6980]: chica: changed atd omod inside the installer to 1.7 <http://dev.openmrs.org/changeset/6980>
19:02:18 *** nribeka has joined #openmrs
19:14:07 *** james_regen has quit IRC
19:33:16 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6981]: formimportexport module. This is a tenative fix for problems with syncing … <http://dev.openmrs.org/changeset/6981>
20:05:17 <OpenMRSBot> Recent updates in the world of openmrs: OpenMRS Changesets: Changeset [6982]: Fixing PatientServiceTest to work when run in batch style from within … <http://dev.openmrs.org/changeset/6982>
20:06:06 *** nribeka-class has joined #openmrs
20:14:40 <r0bby_> bwolfe
20:14:45 <bwolfe> r0bby_:
20:14:47 <r0bby_> nevermind unpung
20:14:50 <r0bby_> unping
20:14:56 <r0bby_> I made the decision for now
20:14:58 <r0bby_> temporary
20:15:02 <r0bby_> coding sort of
20:15:18 <r0bby_> spent last night trying to figure out to use spring controllers and such
20:15:27 <r0bby_> not too bad
20:15:31 <r0bby_> no more ajax.
20:15:39 <r0bby_> too much of a nightmare
20:16:06 <r0bby_> only use will be in compiling the model/controller for instant feedback
20:20:03 <bwolfe> r0bby_: sounds like you came to an excellent conclusion :-)
20:35:27 <r0bby_> somebody remind me why i designed this the way i did?
20:35:49 <r0bby_> it's not even a numeric formid
20:35:58 <r0bby_> it consists of formName+versionnumber
20:36:36 <r0bby_> so checking for duplicate forms is impossible :/
20:37:40 <bwolfe> r0bby_: ha! good question
20:37:59 <bwolfe> r0bby_: is it because you're storing it in the filesystem and so its hard to keep "attributes" like version in there ?
20:39:16 <r0bby_> i don't even remember my logic here
20:39:31 <r0bby_> I think i winged it
20:39:52 <r0bby_> at times i think i designed myself into a corner :(
20:40:09 <r0bby_> that reminds me i need ot get openmrs working again in tomcat
20:41:26 <bwolfe> its not working anymore ??
20:41:54 <r0bby_> shit hit the fan over the holidays
20:47:50 <r0bby_> by the way idea bitches when it sees <b> and wants either <strong> or <span style="font-weight: bold;">...</span>
21:12:51 *** nribeka-class has quit IRC
21:54:09 <nribeka> hi bwolfe
21:54:18 <bwolfe> hey nribeka
21:54:39 <nribeka> got your email
21:54:52 *** r0bby_ is now known as r0bby
21:54:55 <nribeka> ups i mean the ticket comment
21:56:30 <r0bby> so bwolfe should i store the class definitions and view text in the GroovyForm instance?
21:56:42 <r0bby> (which contains all info that's needed for the system
21:56:48 <nribeka> the reason the hashcode is still using rootEntity is to prevent the cache miss for polymorphic query
21:56:53 <r0bby> I store the names i can't remember why
21:57:35 <bwolfe> r0bby: what are your other options ?
21:57:46 <r0bby> read it in every time i need to pull it for editing
21:57:51 <r0bby> from the file system
21:58:15 <r0bby> but i run the risk of one becoming outdated from the other
21:58:16 <r0bby> :/
21:58:35 <r0bby> user could go and editing it manually outside of the webapp
21:58:40 <bwolfe> r0bby: if you're only pulling it for editing, it doesn't really happen that often, so might as well do the filesystem pull
21:58:51 <r0bby> I COULD run a job to sync it periodically
21:58:57 <bwolfe> r0bby: filling out a form will happen many many times per day though
21:59:24 <bwolfe> r0bby: sounds like too much work to save only a tiny amount of time (if its only used when editing)
21:59:29 <r0bby> it'd be easier to just do a <spring:bind>
21:59:36 <bwolfe> nribeka: bah. I thought that was what the .equals() change was for ?
22:00:04 <r0bby> i suppose i could pull it in using a list
22:00:06 <r0bby> or map
22:00:07 <r0bby> :x
22:00:12 <r0bby> in the controller
22:00:25 <r0bby> I have to load it using a servlet and the request dispatcher
22:00:36 <r0bby> which is insecure but for our use case i dont think it matterws
22:00:39 <r0bby> matters*
22:00:41 <nribeka> the hashcode will ensure the hashmap will load all the match hashcode to cache map
22:01:00 <nribeka> but the equals will prevent the patient = user
22:01:03 <r0bby> there is a vunerability in tomcat with regard to request dispatchers
22:01:41 <r0bby> I may revamp the view generation and rip Darius' work since we're using the same license it's allowed
22:01:56 <r0bby> I like his design a lot
22:02:38 <bwolfe> r0bby: feel free to steal any and all code from darius
22:03:04 <bwolfe> nribeka: I'm getting a cache hit for a User object when trying to add a Patient object :-/
22:03:14 <r0bby> Ultimately i'm gonna integrate groovy support into Htmlformentry module at some point
22:03:18 <bwolfe> (because both have Person as their rootEntityName)
22:03:25 <r0bby> or possibility merge them into one
22:03:34 <r0bby> that'd be fun
22:03:48 <nribeka> really?
22:03:54 <nribeka> hmm ...
22:04:43 <nribeka> if we use the entityName, then all polymorphic query going to be miss for sure because they never get to the cache map
22:06:24 <bwolfe> nribeka: we want User vs Patient to cache miss. We want Patient vs Patient to cache hit
22:06:33 <r0bby> oh i know why i saved the class name
22:06:38 <r0bby> for saving it to disk
22:06:39 <bwolfe> with just entityName Patient vs Patient will cache miss ??
22:07:08 <bwolfe> r0bby: adding groovy controllers to htmlformentry is a distinct possibility
22:07:26 <r0bby> yeh
22:07:28 <nribeka> with entityName, patient and person going to miss
22:07:39 <r0bby> it's easier than you think
22:07:40 <nribeka> patient and patient, i haven't try it yet
22:07:56 <r0bby> add a checkbox
22:08:12 <r0bby> specify the class in an element
22:08:18 <r0bby> save that class to disk or in the db somewhere
22:08:54 <r0bby> load it up and pass it to GroovyClassLoader, instantiate the class, call .onSubmit()
22:09:02 <bwolfe> nribeka: we want patient vs person to /always/ miss. getting that hit is what is causing the problem! :-)
22:09:48 <nribeka> but that what causing the /web/test failing the other day bwolfe
22:10:10 <nribeka> it miss the cache
22:10:15 <r0bby> I should probably be doing my discrete hw :x
22:10:25 <r0bby> or reading for my digital electronics class :S
22:10:41 <bwolfe> nribeka: was it missing the cache because of entityName vs rootEntityName though ?
22:10:54 <bwolfe> r0bby: nah, openmrs hacking is more fun ;-)
22:11:00 <r0bby> duh
22:11:02 <r0bby> I hate school
22:11:11 <r0bby> I'd rather do this than do god damn proofs
22:11:19 <r0bby> ...and this is logged
22:11:23 <r0bby> <3 AWESOME
22:11:49 <nribeka> yes
22:12:25 <nribeka> the hashcode value is different, that's why it miss and create a proxy person instead of getting the person object from the cache
22:12:43 * r0bby growls i hate doing HTML
22:15:36 <bwolfe> nribeka: so what object was stored in the cache and what object was trying to be fetched (and then missing) ?
22:16:15 <r0bby> somebody remind me why i chose a webapp?
22:16:20 <r0bby> to work w/?
22:16:21 <r0bby> lol
22:16:28 * r0bby <3s openmrs
22:16:41 <r0bby> just... the html is annoying :(
22:16:54 <bwolfe> r0bby: don't tell me you can understand java but can't understand a simple language like html...
22:17:01 * r0bby finds a wysiwyg editor
22:17:05 <r0bby> bwolfe: i can understand it
22:17:08 <r0bby> I just hate coding it
22:18:20 <r0bby> i understand swing at VERY basic level; I know the different layout managers Flow, Border,Grid,Gridbag(at a very basic level)
22:18:51 <nribeka> object stored is patient, object tried used to get person (to fill the personName's person field)
22:19:08 <nribeka> in the cache is the patient
22:19:33 <nribeka> in the normal flow, the process should return the patient (sub of Person)
22:22:07 *** jacobb has joined #openmrs
22:22:48 <jacobb> bwolfe, apparently I suck at formatting in trac, you can fix that comment on issue 1029 if you want :)
22:23:24 <bwolfe> jacobb: theres a "preview" button you know. :-)
22:26:36 <bwolfe> nribeka: hmm. so how do we allow a person to get a cache hit on patient but a patient not get a cache hit on person ?
22:29:04 <nribeka> if we use the rootEntityName it will be both then right bwolfe? :(
22:29:17 <bwolfe> nribeka: right
22:29:35 <bwolfe> nribeka: thats when we get into trouble. because if you ask for a patient, and a person is returned, you're in trouble
22:29:51 <bwolfe> nribeka: (if you ask for a person, and a patient is returned, no harm is done)
22:30:20 <nribeka> so, i think we could fix the equals then
22:30:42 <bwolfe> nribeka: what do you mean ?
22:31:54 <nribeka> in the equals i wrote the if (a is subclass b) or (b is subclass of a) then they're equals
22:32:29 <nribeka> are you following me bwolfe?
22:33:01 <bwolfe> nribeka: yes, I agree, that should be fxed
22:33:51 <nribeka> so, instead of giving two way, we limit it to one way only, right?
22:34:07 <nribeka> (i hope this will work) (fingers crossed)
22:35:12 <bwolfe> nribeka: the hashcode still needs to be one way or the other though
22:35:37 <nribeka> so hashcode is still root right?
22:36:24 <bwolfe> nribeka: no, it can't be. because then Patient == Person == User all the timme
22:37:02 <nribeka> ah yes
22:37:29 <nribeka> sorry :P
22:41:04 <jacobb> bwolfe...figured there'd be an "edit" button too... ;)
22:41:52 <bwolfe> jacobb: no, because unfortunately if we give out "edit" privileges its for _all_ comments, not just your own :-/
22:42:12 <jacobb> ah, gotcha...my bad, thanks!
22:53:00 *** Keelhaul has joined #openmrs
22:53:00 *** ChanServ sets mode: +v Keelhaul
23:01:37 *** nribeka has quit IRC
23:21:44 <Keelhaul> bwolfe: eclipse auto updated itself and now when in doubleclick "package-module" in ant, it makes me "select a configuration"
23:21:48 <Keelhaul> how can i get rid of it?
23:41:23 * r0bby /jj
23:41:25 <r0bby> er
23:48:21 <r0bby> okay that was painful I've spring mvc'd the editing form
23:48:26 <r0bby> which is duplicated in a way ;x
23:50:45 *** nribeka has joined #openmrs