Hello fellow perl-mongers!
I would like to propose two new modules I've written to be included in the CPAN.
They are a replacement of Class::Struct and Class::DBI, with some extensions to
both. Both modules are available as version 0.01 (functioning, but not
thoroughly tested... :))
Class::StructTemplate is a template class which basically does the same as
Class::Struct. It creates a new class with accessors and a constructor,
according to a list of data-items made available at creation time. The class can
easily be extended with user-functions.
Class::Persistent::StructTemplate is a derived class from Class::StructTemplate
that adds the ability to the newly created class to be serialized using a module
that was specified at creation-time (called a persistence-plugin). The following
functions can be used on each instance of the class: load, load_into, save,
delete. (they all work on the underlying database) load and load_into accept an
SQL-where-string so that class instances can be loaded according to an exact
specification. The speciality of Class::Persistent::StructTemplate is that it
handles references to different modules also derived from
Class::Persistent::StructTemplate correctly by saving them to their plugin, but
can also handle other data other from strings and numbers.
Class::Persistent::Plugin::* contains all persistence-plugins. I have currently
written one plugin which enables persistence through a MySQL-database, but this
could easily be extended (I'm currently working on a DBM-persistence-plugin.)
The interface that must be supported by a persistence-plugin is very generic,
and quite cleanly documented (as of today... :))
As I started writing both modules as a hack for another module I am planning to
implement (FileSys::DBFS - a file-system in a box, as to say...), I have not yet
submitted them to public screening... Quality control has thus only been done by
me...
After having explained the modules, I'll start with the data you asked for:
Name: Heiko Wundram
eMail: [EMAIL PROTECTED] (at the moment), in the near future: [EMAIL PROTECTED]
HP: www.ceosg.de
UID on CPAN: heikowu
Description: see above
DSLI entry: <<"END";
Name
1. Class::StructTemplate
2. Class::Persistent::StructTemplate
3. Class::Persistent::Plugin::*
DSLI
1. adpO
2. adpO
3. adpO
Description
1. Fascilitates creation of public class-data
2. Fascilitates persistence of public class-data
3. Plugins to allow persistence using Class::Persistent::StructTemplate
END;
Quality control: none yet... :)
If you'd like to recieve the alpha of my modules, no problem! I'll have them
packed and ready tomorrow, or at the lastest in two days. Documentation is
currently still quite a major problem (only very little), but this will be added
in the weeks to come.
I hope to receive a positive answer (soon... ;))!
Yours,
Heiko Wundram
Head of the Celle Open Source Community.
btw: Merry christmas to you all (although it might be a little late...)