[ewiki] Re: intermediate release, planning OO database API

Sounds good, but my contributions may be limited.



 

> -----Original Message-----
> From: Mario Salzer [mailto:mario@xxxxxxxxxxxxx] 
> Sent: Friday, July 16, 2004 1:41 PM
> To: ewiki@xxxxxxxxxxxxx
> Subject: [ewiki] intermediate release, planning OO database API
> 
> Hi @all,
> 
> I'd like to put out an intermediate release around next week, 
> and make the CVS code base instable after that, when 
> migrating (or first
> testing) a new database API.
> 
> There is no need to upgrade to this minor release, because 
> there isn't much new in it and we had no major bugs since the 
> last major release
> (R1.01d) I know of. It will only have added the necessary 
> type casts for working around changes in PHP5.
> 
> #
> 
> http://erfurtwiki.sourceforge.net/ObjectOrientedDatabaseInterface
> 
> will look something like:
> - ewiki_db::GET($id, $version)
> - ewiki_db::WRITE($hash)
> - ewiki_db::SEARCH($fields, $opts, ...)
> 
> So the new API will become a static class with function 
> method names, which as you see isn't all that OO yet. However 
> the database backends will be encapsulated into classes as 
> well; eventually allowing later to use multiple concurrently 
> more easily than it is possible now (for database conversion, 
> transition and export). 
> 
> One real benefit of that new API was that more capable 
> database functions got more call parameters, and that a few 
> more generic calls could be added. Since everything will be 
> accessed through the new static class everything will look 
> cooler ;) and no need for passing around a $ewiki_db object 
> arises. With some luck this may also speed up things a bit 
> (by getting rid of the string switch()/case construct). Won't 
> get as feature bloated as the PhpWiki DB interface, of course.
> 
> Btw, this doesn't introduce any change in the SQL scheme, nor 
> will it break existing extensions, since a wrapper for the 
> old ewiki_database() function interface will remain (in the 
> next versions). It also adds no dependency on PHP5. Anybody 
> with a customized SQL backend may however need to load an OO 
> wrapper then (that itself calls an ewiki_database() interface 
> function).
> 
> It's not decided yet and just a plan (comments welcome!). 
> However I'll use the transition time for looking over all 
> other code; as especially the auth/ plugins require some review.
> 
> mario
> 
> 
> ######################################################################
> ewiki@freelists subscription:
> http://erfurtwiki.sourceforge.net/MailingList
> http://www.freelists.org/
> 
> 
> 
> _________________________________________________
> Scanned on 16 Jul 2004 18:53:16
> Scanning by http://erado.com
> 

Other related posts: