2007-11-24:
[20:41] <zumbrunn> I removed the new jsdoc-toolkit based reference I had temporarily put at /reference/toolkit/[20:41] <zumbrunn> and I now updated the version at http://helma.zumbrunn.net/reference/[20:41] <zumbrunn> (not finished yet, though)[20:42] <zumbrunn> but if you notice something really goofy, please let me know[20:47] <bslivka> oooh new docs[20:48] <zumbrunn> the difference is more technical than content[20:49] <bslivka> sure[20:49] <zumbrunn> it is updated and contains some fixes, though[20:49] <zumbrunn> (the last one on the site was from July)[20:51] <bslivka> have you ever used Javascrip getters and setters on hopobjects?[20:52] <zumbrunn> trying to remember[20:52] <zumbrunn> not on hopobjects directly, I don't think[20:53] <zumbrunn> just on object properties of hopobjects[20:53] <zumbrunn> it doesn't work?[20:53] <bslivka> hrmn I haven't tried object properties yet. How are they persisted in the DB?[20:53] <bslivka> Well I don't know whether it works yet or not.[20:54] <zumbrunn> not at all, unless you take care of it yourself in onPersist[20:54] <bslivka> I was considering using it as I'm trying something moderately complex in helma, and I'm not yet 100% sure if it's possible.[20:54] <zumbrunn> what's that?[20:55] <bslivka> Well- There's this book written by Chris Date and I think his name is Nick Lorentzo[20:55] <bslivka> I haven't read it, but I understand the basic principal it pushes..[20:56] <bslivka> The idea is temporal databases, and the purpose of the book was to inform some extension to SQL[20:56] <bslivka> but it can be done without any extensions as well.[20:56] <bslivka> The idea is that with each entity in the database, you store two date intervals[20:57] <bslivka> and each item has an ID that identifies it through out time, and another id that identifies each change[20:58] <bslivka> one interval identifies when an object was changed- Or put another way, when the object was in that state in the database[20:58] <bslivka> and the other when the fact represented by that object was true[20:59] <bslivka> For my purposes I really only need the first interval[20:59] <bslivka> The end result I'm going for is that the database never recieves any delete queries[20:59] <bslivka> the database not only stores the current state of the system, but all previous states[21:00] <bslivka> so you can arbitrarily roll back at any time, and view what the state of the system was at any point in its history[21:01] <zumbrunn> in a sense, you already have a "getter " and "setter" for hopobjects through onInit and onPersist[21:01] <bslivka> that may well be better than getters and setters[21:01] <zumbrunn> in the context you are talking about, yes[21:01] <bslivka> if I were to do getters and setters I would have to set it up for every property[21:02] <zumbrunn> right[21:02] <bslivka> the main thing I want to capture is object modifications[21:02] <bslivka> What needs to happen when a property changes is that the end interval for that object needs to be set for now, and a new object created in its place with the new properties[21:03] <bslivka> I'll have a closer look at onInit here... on the fancy new docs[21:04] <zumbrunn> hehe[21:06] <bslivka> so onInit is only called when a hopObject is fetched from the DB[21:06] <zumbrunn> right[21:08] <bslivka> and onPersist is the inverse. If I did SomeHopObject.property1="foo", onPersist would be called, yes?[21:08] <zumbrunn> when the change is persisted[21:09] <zumbrunn> usually at the end of a request[21:09] <bslivka> ah[21:09] <bslivka> that's right, I encountered that the other day.[21:10] <bslivka> I was doing XML parsing into a database- and when one of my functions threw an error, nothing would be persisted[21:10] <bslivka> which was a good thing, because I'd hate to have half an XML document to clean out of my DB[21:12] <zumbrunn> otherwise: http://helma.zumbrunn.net/reference/res.html#res.commit[21:12] <bslivka> now what would make this much easier is if the filter property were dynamic[21:13] <zumbrunn> which filter property?[21:13] <bslivka> in type.properties.[21:13] <zumbrunn> oh[21:13] <bslivka> If I wanted a hopobject collection from a certain date, I could change the filter property for that collection[21:15] <zumbrunn> asking on the mailing list could be worth while for that[21:16] <bslivka> good idea. Paid off last time I wrote to the mailing list.[21:16] <zumbrunn> there are a lot of undocumented type.properties related tricks I don't know about[21:17] <zumbrunn> afk, time for dinner[21:17] <bslivka> This was a features that my boss (an experienced helma user) wanted was something like a filterBy(), similar to the orderBy() function[21:17] <bslivka> as it would be useful for many other things as well[21:18] <bslivka> So I'm not sure that it exists, but it's something he wanted to request from hannes
In the channel now:
Logs by date: