new caching system to replace old page cache

This commit is contained in:
JT Smith 2006-04-05 20:46:57 +00:00
parent e12ff119af
commit e4392f7449
54 changed files with 718 additions and 167 deletions

View file

@ -13,6 +13,7 @@ package WebGUI::Asset::Event;
use strict;
use Tie::CPHash;
use WebGUI::Form;
use WebGUI::Cache;
use WebGUI::HTML;
use WebGUI::HTMLForm;
use WebGUI::International;
@ -192,6 +193,21 @@ sub processPropertiesFromFormPost {
}
#-------------------------------------------------------------------
=head2 purgeCache ()
See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
my $self = shift;
WebGUI::Cache->new($self->session,"view_".$self->getId)->delete;
$self->SUPER::purgeCache;
$self->getParent->purgeCache;
}
#-------------------------------------------------------------------
=head2 setParent ( newParent )
@ -214,6 +230,10 @@ sub setParent {
#-------------------------------------------------------------------
sub view {
my $self = shift;
if ($self->session->user->userId eq '1') {
my $out = WebGUI::Cache->new($self->session,"view_".$self->getId)->get;
return $out if $out;
}
my ($output, $event, $id);
my %var = $self->get;
my $i18n = WebGUI::International->new($self->session,"Asset_Event");
@ -245,7 +265,11 @@ sub view {
});
}
$var{others_loop} = \@others;
return $self->processTemplate(\%var,undef, $self->{_viewTemplate});
my $out = $self->processTemplate(\%var,undef,$self->{_viewTemplate});
if ($self->session->user->userId eq '1') {
WebGUI::Cache->new($self->session,"view_".$self->getId)->set($out,$self->getParent->get("visitorCacheTimeout"));
}
return $out;
}