sub setup {
my $self = shift;
tie %session, 'Apache::Session', $self->query->cookie('session_id');
$self->param('session', \%session);
# etc.
}
sub current_run_mode {
my $self = shift;
# etc.
my $uid = $self->param('session')->{uid};
# etc.
}
####
my $uid = $self->session->uid;
####
sub setup {
my $self = shift;
tie %session, 'Apache::Session', $self->query->cookie('session_id');
$self->composite_object( name => 'session',
object => tied(%session));
# etc.
}
####
sub AUTOLOAD {
my $self = shift;
my $attribute = $AUTOLOAD;
$method =~ s/.*:://;
if ( length($method) != 0 ) {
if ( @_ > 1) {
return $self->STORE($attribute, @_);
} else {
return $self->FETCH($attribute);
}
} else {
croak "No such object attribute referenced by name '"
. $attribute
. ' to provide ";
}
}
####
sub AUTOLOAD {
my $self = shift;
my $attribute = $AUTOLOAD;
$method =~ s/.*:://;
my %session = Foo($self);
if ( @_ > 1) {
return $session{$attribute} = $_[0];
} else {
return $session{$attribute};
}
}