CGI-AppToolkit
view release on metacpan or search on metacpan
lib/CGI/AppToolkit/Data/Object.pm view on Meta::CPAN
$self->preinit()
}
$self->init() || return undef;
$self
}
#-------------------------------------#
# OO Methods #
#-------------------------------------#
# prefetch -- return a [$sth, $order] and {$values}
sub init {
my $self = shift;
#set:
# table
1; # MUST return true
}
#-------------------------------------#
# fetch some objects
sub fetch {
my $self = shift;
my $args = ref $_[0] eq 'HASH' ? shift : {@_};
}
#-------------------------------------#
# fetch an object
sub fetch_one {
my $self = shift;
my $args = ref $_[0] eq 'HASH' ? shift : {@_};
$args->{'-one'} = 1;
$self->fetch($args);
}
*fetch_row = \&fetch_one;
#-------------------------------------#
# store an object
sub store {
my $self = shift;
}
#-------------------------------------#
# update an object
sub update {
my $self = shift;
}
#-------------------------------------#
# delete an object
sub delete {
my $self = shift;
}
#-------------------------------------#
# cleanup an object
sub cleanup {
my $self = shift;
return shift;
}
#-------------------------------------#
# get a prepared db statement
sub db_statement {
my $self = shift;
my $name = shift;
}
#-------------------------------------#
# AUTOLOAD
sub AUTOLOAD {
#my $self = shift;
my $name = $AUTOLOAD;
$name =~ s/.*://; # strip fully-qualified portion
return if $name eq 'DESTROY';
my $name_lc = lc $name;
if ($name_lc =~ /^get_(.*)/) {
$name_lc = $1;
eval <<"END_SUB" || croak "AUTOLOAD '$AUTOLOAD' failed: \"$@\"";
sub $name {
my \$self = shift;
return \$self->{'$name_lc'} || undef;
}
1;
END_SUB
} elsif ($name_lc =~ /^set_(.*)/) {
$name_lc = $1;
eval <<"END_SUB" || croak "AUTOLOAD '$AUTOLOAD' failed: \"$@\"";
sub $name {
my \$self = shift;
( run in 2.484 seconds using v1.01-cache-2.11-cpan-140bd7fdf52 )