From: Alex B. <en...@tu...> - 2001-08-23 17:31:13
|
> On Sat, Sep 22, 2001 at 11:24:42PM -0400, Alok K. Dhir wrote: >> >> version is marked as inactive. This effectively will allow us to build >> an interface with the ability for automatic version control, unlimited >> undo, and so on. >> >> Having read through the pre-release docs on r2, it doesn't look like >> there's anything in the core product which will facilitate this. On the >> other hand, there also doesn't seem to be anything which should hinder >> this. > > We have a few versioned entities. We basically implement and override the > necessary methods in the derived class. For example, the > VersionedObjectManager::Set() can do whatever you want or you can just call > the > parent::Add() and get the system default behaviour. It's not automatic, but > functional. Heh, cool. Ah, i.e. you're implementing this on an "individual" entityManager basis. I'd prefer to add it as a system level extension to the EntityManager, do you agree? >> Seems to me that this functionality may belong in the core product, with >> parameters in the XML entity definition files that would enable >> versioning/history automatically. Comments? > > If it's possible to spec out the behaviour of a generic versioned object in a > way that is useful for the majority of the cases, then this is very feasible. > > jpc I think so: so where one normally would request an entity record id, like: "give me address id 254" you could change the bahavior of Get etc to say "give me address id 245 timestamp latest" or "give me address id 254 city berkeley" I think you'd want to implement it as john suggests: VersionedEntityManager, which would override some base methods. hmm... _a |