MetaL data persistence layer module released

From: Date: Fri, 01 Nov 2002 10:05:22 +0000
Subject: MetaL data persistence layer module released
Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-10409@lists.php.net to get a copy of this message
Hello, Finally I was able to make a initial release of MetaL persistence module. There is a more detailed news release in the page below, but basically this a new meta-meta-programming module for the MetaL compiler engine that is able to generate an API that implements a persistence layer to store and retrieve objects in persistence storage. It takes a description of classes of entity objects in XML and generates all the classes and schemas that are needed to provide the persistence API. There is much more detail in the news page below. Anyway, this module is an alpha stage. I just released it now because I would like some feedback on the usage of the module from people that know data persistence layers and make some criticisms so I can spot any design issues early in the development of this module. Currently, I have provide a sample component than you can try simply by going into metal/test/persistence and do: php -q build.php some.component I have provided an example component that could be the what a normal Content Management System needs in terms of objects that need to be persisted. In the same directory take a look at cms.component . Build it with the command line: php -q build.php cms.component You will see that inside a directory named install it created several classes: a factory class, a few classes for each one defined in the cms.component XML file, a schema installation class and a database schema definition in a XML format. Although there could be other types of persistent storage (XML files, LDAP, etc..), currently MetaL persistence layer only generates code to interface to SQL based relational databases. Currently it uses Metabase API to interface with databases. PEAR::MDB is expected to work with Metabase API wrapper. It could use other database API and maybe in the future it will, but for now Metabase is very adequate because it is portable (many databases supported with the same code) and provides schema management with schema definitions in XML. Anyway, if you are interested in these subjects, please take a look and follow up to MetaL mailing list (metal-dev@yahoogroups.com) or mail me privately (mlemos@acm.org). http://www.meta-language.net/news-2002-11-01-persistence.html -- Regards, Manuel Lemos

« previous php.pear.dev (#10409) next »