Moose overrides for purge, purgeRevision, and purgeCache.

This commit is contained in:
Colin Kuskie 2010-04-07 16:43:16 -07:00
parent 7ba89245fa
commit 616d5cc866
36 changed files with 139 additions and 192 deletions

View file

@ -1752,7 +1752,7 @@ Extent the method from the super class to delete all storage locations.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $sth = $self->session->db->read("select storageId from Event where assetId=?",[$self->getId]);
while (my ($storageId) = $sth->array) {
@ -1760,8 +1760,8 @@ sub purge {
$storage->delete if defined $storage;
}
$sth->finish;
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------
@ -1771,11 +1771,11 @@ Extent the method from the super class to delete the storage location for this r
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
$self->getStorageLocation->delete;
return $self->SUPER::purgeRevision;
}
return super();
};
####################################################################

View file

@ -420,15 +420,15 @@ Extends the master method to delete all storage locations associated with this a
=cut
sub purge {
override purge => sub {
my $self = shift;
my $sth = $self->session->db->read("select storageId from FileAsset where assetId=".$self->session->db->quote($self->getId));
while (my ($storageId) = $sth->array) {
$self->getStorageClass->get($self->session,$storageId)->delete;
}
$sth->finish;
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------
@ -438,11 +438,11 @@ Extends the master method to clear the view cache.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------
@ -452,11 +452,11 @@ Extends the master method to delete the storage location for this asset.
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
$self->getStorageLocation->delete;
return $self->SUPER::purgeRevision;
}
return super();
};
#----------------------------------------------------------------------------

View file

@ -662,15 +662,15 @@ Purge the asset. Remove all comments on the GalleryFile.
=cut
sub purge {
override purge => sub {
my $self = shift;
for my $commentId ( @{ $self->getCommentIds } ) {
$self->deleteComment( $commentId );
}
return $self->SUPER::purge;
}
return super();
};
#----------------------------------------------------------------------------

View file

@ -493,7 +493,7 @@ purges it's data.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $db = $self->session->db;
@ -501,8 +501,8 @@ sub purge {
$db->write("delete from MatrixListing_rating where listingId=?" ,[$self->getId]);
$db->write("delete from MatrixListing_ratingSummary where listingId=?" ,[$self->getId]);
return $self->next::method;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -1130,16 +1130,16 @@ Extend the base method to handle cleaning up storage locations.
=cut
sub purge {
my $self = shift;
my $sth = $self->session->db->read("select storageId from Post where assetId=".$self->session->db->quote($self->getId));
while (my ($storageId) = $sth->array) {
my $storage = WebGUI::Storage->get($self->session, $storageId);
$storage->delete if defined $storage;
}
$sth->finish;
return $self->SUPER::purge;
}
override purge => sub {
my $self = shift;
my $sth = $self->session->db->read("select storageId from Post where assetId=".$self->session->db->quote($self->getId));
while (my ($storageId) = $sth->array) {
my $storage = WebGUI::Storage->get($self->session, $storageId);
$storage->delete if defined $storage;
}
$sth->finish;
return $self->super();
};
#-------------------------------------------------------------------
@ -1149,11 +1149,11 @@ Extend the base class to handle caching.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getThread->getId)} if ($self->getThread);
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------
@ -1163,11 +1163,11 @@ Extend the base method to handle deleting the storage location.
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
$self->getStorageLocation->delete;
return $self->SUPER::purgeRevision;
}
return super();
};

View file

@ -696,15 +696,15 @@ the subscriptionGroup for this thread.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from Thread_read where threadId=?",[$self->getId]);
my $group = WebGUI::Group->new($self->session, $self->subscriptionGroupId);
if ($group) {
$group->delete;
}
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------

View file

@ -858,14 +858,14 @@ overrides.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write(<<'END_SQL', [$self->getId]);
DELETE FROM Shortcut_overrides
WHERE assetId = ?
END_SQL
return $self->SUPER::purge(@_);
}
return super();
};
#-------------------------------------------------------------------

View file

@ -342,15 +342,15 @@ Deletes all badges and things attached to the badges. No refunds are given.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $db = $self->session->db;
$db->write("delete from EMSRegistrantTicket where badgeId=?",[$self->getId]);
$db->write("delete from EMSRegistrantToken where badgeId=?",[$self->getId]);
$db->write("delete from EMSRegistrantRibbon where badgeId=?",[$self->getId]);
$db->write("delete from EMSRegistrant where badgeId=?",[$self->getId]);
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------

View file

@ -166,11 +166,11 @@ Deletes all entries in EMSRegistrationRibbon table for this sku. No refunds are
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from EMSRegistrantRibbon where ribbonAssetId=?",[$self->getId]);
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------

View file

@ -451,11 +451,11 @@ Deletes all ticket purchases of this type. No refunds are given.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from EMSRegistrantTicket where ticketAssetId=?",[$self->getId]);
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------

View file

@ -159,11 +159,11 @@ Destroys all tokens of this type. No refunds are given.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from EMSRegistrantToken where tokenAssetId=?",[$self->getId]);
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------

View file

@ -746,7 +746,7 @@ Extend the base class to handle all file collateral.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $sth = $self->session->db->read("select image1, image2, image3, brochure, manual, warranty from Product where assetId=?", [$self->getId]);
while (my @array = $sth->array) {
@ -756,8 +756,8 @@ sub purge {
}
}
$sth->finish;
$self->SUPER::purge();
}
super();
};
#-------------------------------------------------------------------
@ -767,11 +767,11 @@ Extends the base class to handle cleaning up the cache for this asset.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
$self->session->cache->delete("view_".$self->getId);
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------
@ -781,7 +781,7 @@ Extend the base method to handle deleting file collateral.
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
WebGUI::Storage->get($self->session, $self->get("image1"))->delete if ($self->get("image1"));
WebGUI::Storage->get($self->session, $self->get("image2"))->delete if ($self->get("image2"));
@ -789,8 +789,8 @@ sub purgeRevision {
WebGUI::Storage->get($self->session, $self->get("brochure"))->delete if ($self->get("brochure"));
WebGUI::Storage->get($self->session, $self->get("manual"))->delete if ($self->get("manual"));
WebGUI::Storage->get($self->session, $self->get("warranty"))->delete if ($self->get("warranty"));
return $self->SUPER::purgeRevision;
}
return super();
};
#-----------------------------------------------------------------

View file

@ -508,7 +508,7 @@ Remove all collateral associated with the ThingyRecord sku
=cut
sub purge {
override purge => sub {
my $self = shift;
my $options = { constraints => [ { 'assetId = ?' => $self->getId } ] };
@ -520,8 +520,8 @@ sub purge {
# XXX: Should we also remove the records from the Thingy?
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -202,15 +202,15 @@ Extending purgeCache to handle caching of the rendered snippet
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
my $cache = $self->session->cache;
eval {
$cache->delete("view__".$self->getId);
$cache->delete("view_1_".$self->getId);
};
$self->SUPER::purgeCache();
}
super();
};
#-------------------------------------------------------------------

View file

@ -634,7 +634,7 @@ Cleaning up all storage objects in all revisions.
=cut
sub purge {
override purge => sub {
my $self = shift;
##Delete all storage locations from all revisions of the Asset
my $sth = $self->session->db->read("select photo from Story where assetId=?",[$self->getId]);
@ -647,8 +647,8 @@ sub purge {
}
}
$sth->finish;
return $self->next::method;
}
return super();
};
#-------------------------------------------------------------------
@ -658,15 +658,15 @@ Remove the storage locations for this revision of the Asset.
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
my $session = $self->session;
foreach my $photo ( @{ $self->getPhotoData} ) {
my $storage = WebGUI::Storage->get($session, $self-$photo->{storageId});
$storage->delete if $storage;
}
return $self->next::method;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -1372,7 +1372,7 @@ Extend the base method to delete the subscription group and cron job for emails.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $group = WebGUI::Group->new($self->session, $self->subscriptionGroupId);
if ($group) {
@ -1382,8 +1382,8 @@ sub purge {
my $cron = WebGUI::Workflow::Cron->new($self->session, $self->getMailCronId);
$cron->delete if defined $cron;
}
$self->next::method;
}
super();
};
#-------------------------------------------------------------------
@ -1393,15 +1393,15 @@ Extend the base method to delete view and visitor caches.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
my $cache = $self->session->cache;
eval {
$cache->delete("view_".$self->getId);
$cache->delete($self->_visitorCacheKey);
};
$self->next::method;
}
super();
};
#-------------------------------------------------------------------

View file

@ -111,11 +111,11 @@ Extend the base method to handle deleting information from the Newsletter_subscr
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from Newsletter_subscriptions where assetId=?", [$self->getId]);
$self->SUPER::purge(@_);
}
super();
};
#-------------------------------------------------------------------

View file

@ -261,14 +261,14 @@ for this dashboard.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $userPrefField = WebGUI::ProfileField->new($self->session,$self->getContentPositionsId);
if (defined $userPrefField) {
$userPrefField->delete;
}
$self->SUPER::purge(@_);
}
super();
};
#-------------------------------------------------------------------

View file

@ -1014,12 +1014,12 @@ entry collateral.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->deleteAttachedFiles;
$self->entryClass->purgeAssetEntries($self);
return $self->SUPER::purge(@_);
}
return super();
};
#-------------------------------------------------------------------

View file

@ -433,7 +433,7 @@ and event meta data.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $db = $self->session->db;
@ -456,8 +456,8 @@ sub purge {
$db->write("delete from EMSBadgeGroup where emsAssetId=?",[$self->getId]);
$db->write("delete from EMSEventMetaField where assetId=?",[$self->getId]);
$self->SUPER::purge(@_);
}
super();
};
#-------------------------------------------------------------------

View file

@ -188,11 +188,11 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------

View file

@ -251,11 +251,11 @@ Extend the base method to delete the cookie jar
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->getCookieJar->delete;
$self->SUPER::purge;
}
super();
};
#-------------------------------------------------------------------
@ -266,15 +266,15 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
my $cache = $self->session->cache;
eval {
$cache->delete([$self->proxiedUrl,"URL"]);
$cache->delete([$self->proxiedUrl,"HEADER"]);
};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------

View file

@ -139,13 +139,13 @@ Extend the base method to cleanup the status and statusLog tables.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $session = $self->session;
$session->db->write('delete from InOutBoard_status where assetId=?', [$self->getId]);
$session->db->write('delete from InOutBoard_statusLog where assetId=?', [$self->getId]);
$self->SUPER::purge(@_);
}
super();
};
#-------------------------------------------------------------------

View file

@ -593,12 +593,12 @@ purges it's data.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from Matrix_attribute where assetId=?",[$self->getId]);
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -70,11 +70,11 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------

View file

@ -80,11 +80,11 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------

View file

@ -388,11 +388,11 @@ Extend the base method to handle Poll answers.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write("delete from Poll_answer where assetId=".$self->session->db->quote($self->getId));
$self->SUPER::purge();
}
super();
};
#----------------------------------------------------------------------------

View file

@ -624,19 +624,6 @@ sub processErrors {
}
#-------------------------------------------------------------------
=head2 purge
=cut
sub purge {
my $self = shift;
#purge your wobject-specific data here. This does not include fields
# you create for your NewWobject asset/wobject table.
return $self->SUPER::purge;
}
#-------------------------------------------------------------------
=head2 setSessionVars

View file

@ -550,11 +550,11 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->SUPER::purgeCache;
}
super();
};
#-------------------------------------------------------------------

View file

@ -311,20 +311,6 @@ sub prepareView {
}
#-------------------------------------------------------------------
=head2 purge ( )
removes collateral data associated with a StockData when the system
purges it's data.
=cut
sub purge {
my $self = shift;
return $self->SUPER::purge;
}
#-------------------------------------------------------------------
=head2 view ( )

View file

@ -1337,26 +1337,13 @@ Completely remove from WebGUI.
=cut
sub purge {
override purge => sub {
my $self = shift;
$self->session->db->write( 'delete from Survey_response where assetId = ?', [ $self->getId() ] );
$self->session->db->write( 'delete from Survey_tempReport where assetId = ?', [ $self->getId() ] );
$self->session->db->write( 'delete from Survey where assetId = ?', [ $self->getId() ] );
return $self->SUPER::purge;
}
#-------------------------------------------------------------------
=head2 purgeCache ( )
See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
my $self = shift;
return $self->SUPER::purgeCache;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -282,11 +282,11 @@ See WebGUI::Asset::purgeCache() for details.
=cut
sub purgeCache {
override purgeCache => sub {
my $self = shift;
eval{$self->session->cache->delete("view_".$self->getId)};
$self->next::method;
}
super();
};
#-------------------------------------------------------------------

View file

@ -1321,7 +1321,7 @@ purges it's data.
=cut
sub purge {
override purge => sub {
my $self = shift;
my $session = $self->session;
my $db = $self->session->db;
@ -1332,8 +1332,8 @@ sub purge {
$db->write("delete from Thingy_things where assetId = ?",[$self->getId]);
$db->write("delete from Thingy_fields where assetId = ?",[$self->getId]);
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -110,19 +110,6 @@ sub processErrors {
}
#-------------------------------------------------------------------
=head2 purge
=cut
sub purge {
my $self = shift;
#purge your wobject-specific data here. This does not include fields
# you create for your NewWobject asset/wobject table.
return $self->SUPER::purge;
}
#-------------------------------------------------------------------
=head2 getDaysInWeek

View file

@ -136,13 +136,13 @@ wobject instances, you will need to purge them here.
=cut
sub purge {
override purge => sub {
my $self = shift;
#purge your wobject-specific data here. This does not include fields
# you create for your NewWobject asset/wobject table.
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------

View file

@ -193,10 +193,10 @@ asset instances, you will need to purge them here.
=cut
sub purge {
override purge => sub {
my $self = shift;
return $self->SUPER::purge;
}
return super();
};
#-------------------------------------------------------------------
@ -206,10 +206,10 @@ This method is called when data is purged by the system.
=cut
sub purgeRevision {
override purgeRevision => sub {
my $self = shift;
return $self->SUPER::purgeRevision;
}
return super();
};
#-------------------------------------------------------------------