internals - Some internal information about the WE_Framework
The object metadata database is implemented as an MLDBM database.
Therefore,
the contents of the database can either be looked in with the show_db
program or with the dump
script (the latter is included with WE_Framework
).
The objects in the object database are array references of four elements:
move
).
The root object should not have any parents. Also, version objects are stored as normal objects in the database, but have no parents.
Here's an example:
[ {'Title' => 'A Folder', 'Id' => '26', ... }, # object [], # children (here: no children) [4], # parents [] # versions (here: no versions) ]
There are two special keys in the database:
The value is the ID of the root object of the database (usually a WE::Obj::Site or WE::Obj::Sites).
The value is the next free ID for new objects.
The current implementation of the content database is simply files in a filesystem. The file names are constructed of the corresponfing object id and the right content-type extension. If there is no content-type, then the extension ".bin" is used. For example, the object with the id 12 and the content-type text/html
is "12.html".
Slaven Rezic <slaven@rezic.de>
WE::DB(3).