CAM::App - Web database application framework
LICENSE
Copyright 2005 Clotho Advanced Media, Inc., <cpan@clotho.com>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
ABOUT CLOTHO
"CAM" stands for Clotho Advanced Media Inc. (www.clotho.com) which developed this module. Contact us at cpan@clotho.com.
INSTALLATION
Install via one of the following:
perl Makefile.PL
make
make test
make install
or
perl Build.PL
perl Build
perl Build test
perl Build install
DESCRIPTION
This module implements a basic framework for building web database applications with the CAM libraries. It is designed to be subclassed (see SUBCLASSING below) by your software to provide web functionality with low overhead. It is intended for the usual Apache, Perl, MySQL, and Linux environment, but as little as possible is hardcoded for that idiom (or, when hardcoded, we try to make the pieces overrideable).
External libraries referenced:
COMPARISON
The Perl module CAM::App most closely resembles is CGI::Application. It's main advantages over that module are:
It's main disadvantages vs. CGI::Application are:
And features which may or may not be advantages:
In general, CGI::Application is great for highly-structured web applications that are easily broken into use modes. CAM::App is good for apps that are much more free form, and just need a little help with organization.
SUBCLASSING
There are a few important steps for you to use this library.
package MyApp; use CAM::App; our @ISA = qw(CAM::App); 1;
cp example/SampleConfig.pm MyConfig.pm edit MyConfig.pm
use lib qw(.); # or where ever you stored the new .pm file use MyApp; use MyConfig;
my $app = MyApp->new(config => MyConfig->new());
$app->authenticate() or $app->error("Login failed");
my $cgi = $app->getCGI();
...