The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Object::POOF::App - Perl Object-Oriented Framework - Application Object

SYNOPSIS

 Package MyApp::App;

 @ISA = qw(Object::POOF::App);
 
 sub init {
    my ($self,$p) = @_;
    
    $self->{sess_table}    = "sessions";

        # note to self... shouldn't this be set up in DB object?
        #
        # THIS DOCUMENTATION NEEDS UPDATING

    # this calls Object::POOF::App::Web->init()
    # or Object::POOF::App::Term->init() automagically
    # because Object::POOF::App->new calls the right new()
    #
    # well, that's the theory, but Term apps aren't implemented
   
    my $status = $self->SUPER::init;
    if (defined $status) {
       my $croak = __PACKAGE__
                 ."->init(): SUPER::init status: $status\n";
       croak $croak;
    } else {
       return 1;
    }
 }

 sub run {
    my ($self,$p) = @_;
    $self->SUPER::run;
 }

 # ... in main script, current example is just for www app:
 require MyApp::DB;
 require MyApp::App;
 my $db  = MyApp::DB->new;  # inherits from Object::POOF::DB
 my $app = MyApp::App->new( db => $db );
 $app->run;

DESCRIPTION

Object::POOF::App provides a framework for an object-oriented application. Future plans include a terminal interface, but right now it only supports an Apache mod_perl application. Some libraries are required, like Apache::Session.

To work, user must define at least one Funk (function) library, MyApp::Funk. This is the default function. See Object::POOF::Funk(3).

SEE ALSO

Object::POOF(3), Object::POOF::Funk(3), Object::POOF::App::Web(3),

AUTHOR

Copyright 2005 Mark Hedges <hedges@ucsd.edu>, CPAN: MARKLE

Released under the standard Perl license (GPL/Artistic).