diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm
index f19db9fb7..4fe8ff277 100644
--- a/lib/WebGUI/Asset.pm
+++ b/lib/WebGUI/Asset.pm
@@ -2838,4 +2838,5 @@ sub www_widgetView {
return $self->outputWidgetMarkup($width, $height, $templateId, $styleTemplateId);
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Event.pm b/lib/WebGUI/Asset/Event.pm
index 6f46b5665..9022b8cad 100644
--- a/lib/WebGUI/Asset/Event.pm
+++ b/lib/WebGUI/Asset/Event.pm
@@ -2360,5 +2360,6 @@ equal and then choose by assetId.
=cut
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/File.pm b/lib/WebGUI/Asset/File.pm
index 85088f2b0..6617c800c 100644
--- a/lib/WebGUI/Asset/File.pm
+++ b/lib/WebGUI/Asset/File.pm
@@ -649,5 +649,5 @@ sub www_view {
return 'chunked';
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/File/GalleryFile.pm b/lib/WebGUI/Asset/File/GalleryFile.pm
index f812a69ba..642a7c405 100644
--- a/lib/WebGUI/Asset/File/GalleryFile.pm
+++ b/lib/WebGUI/Asset/File/GalleryFile.pm
@@ -1184,4 +1184,5 @@ sub setPrivileges {
}
+__PACKAGE__->meta->make_immutable;
1; # Who knew the truth would be so obvious?
diff --git a/lib/WebGUI/Asset/File/GalleryFile/Photo.pm b/lib/WebGUI/Asset/File/GalleryFile/Photo.pm
index fd30cb0f1..c288a6f3b 100644
--- a/lib/WebGUI/Asset/File/GalleryFile/Photo.pm
+++ b/lib/WebGUI/Asset/File/GalleryFile/Photo.pm
@@ -585,4 +585,5 @@ sub www_showConfirmation {
);
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/File/Image.pm b/lib/WebGUI/Asset/File/Image.pm
index 3e31ddef3..ed43336dd 100644
--- a/lib/WebGUI/Asset/File/Image.pm
+++ b/lib/WebGUI/Asset/File/Image.pm
@@ -824,4 +824,5 @@ sub www_crop {
return $self->getAdminConsole->render($f->print.$image,$i18n->get("crop image"));
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/File/ZipArchive.pm b/lib/WebGUI/Asset/File/ZipArchive.pm
index c5b892836..489cc87d5 100644
--- a/lib/WebGUI/Asset/File/ZipArchive.pm
+++ b/lib/WebGUI/Asset/File/ZipArchive.pm
@@ -252,5 +252,6 @@ sub www_view {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/FilePile.pm b/lib/WebGUI/Asset/FilePile.pm
index 22cef39fe..17b9ac227 100644
--- a/lib/WebGUI/Asset/FilePile.pm
+++ b/lib/WebGUI/Asset/FilePile.pm
@@ -270,5 +270,6 @@ sub www_edit {
}
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/MapPoint.pm b/lib/WebGUI/Asset/MapPoint.pm
index 616c24e08..85bfff70d 100644
--- a/lib/WebGUI/Asset/MapPoint.pm
+++ b/lib/WebGUI/Asset/MapPoint.pm
@@ -390,6 +390,7 @@ sub www_view {
return "redirect";
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/MatrixListing.pm b/lib/WebGUI/Asset/MatrixListing.pm
index 921039b10..2cb7893a8 100644
--- a/lib/WebGUI/Asset/MatrixListing.pm
+++ b/lib/WebGUI/Asset/MatrixListing.pm
@@ -1090,6 +1090,8 @@ sub www_viewScreenshots {
return $self->processTemplate($var,$self->getParent->get("screenshotsTemplateId"));
}
+
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Post.pm b/lib/WebGUI/Asset/Post.pm
index 64e90584c..07637dba2 100644
--- a/lib/WebGUI/Asset/Post.pm
+++ b/lib/WebGUI/Asset/Post.pm
@@ -1818,6 +1818,6 @@ sub www_view {
return $self->getThread->www_view($self);
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Post/Thread.pm b/lib/WebGUI/Asset/Post/Thread.pm
index cb555d1e8..1a6f11821 100644
--- a/lib/WebGUI/Asset/Post/Thread.pm
+++ b/lib/WebGUI/Asset/Post/Thread.pm
@@ -1394,5 +1394,6 @@ sub www_view {
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Redirect.pm b/lib/WebGUI/Asset/Redirect.pm
index 77369912d..a5ad06223 100644
--- a/lib/WebGUI/Asset/Redirect.pm
+++ b/lib/WebGUI/Asset/Redirect.pm
@@ -136,5 +136,6 @@ sub www_view {
return $i18n->get('self_referential');
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/RichEdit.pm b/lib/WebGUI/Asset/RichEdit.pm
index b583f8395..490e192e7 100644
--- a/lib/WebGUI/Asset/RichEdit.pm
+++ b/lib/WebGUI/Asset/RichEdit.pm
@@ -676,6 +676,6 @@ sub www_edit {
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Shortcut.pm b/lib/WebGUI/Asset/Shortcut.pm
index e793f8938..7198be202 100644
--- a/lib/WebGUI/Asset/Shortcut.pm
+++ b/lib/WebGUI/Asset/Shortcut.pm
@@ -1288,5 +1288,6 @@ sub getShortcutsForAssetId {
return WebGUI::Asset->getRoot($session)->getLineage(['descendants'], $properties);
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku.pm b/lib/WebGUI/Asset/Sku.pm
index d6a2498a6..d9f16f7d5 100644
--- a/lib/WebGUI/Asset/Sku.pm
+++ b/lib/WebGUI/Asset/Sku.pm
@@ -672,4 +672,5 @@ sub www_view {
return "chunked";
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/Ad.pm b/lib/WebGUI/Asset/Sku/Ad.pm
index 02e925d49..b3a7dcd26 100644
--- a/lib/WebGUI/Asset/Sku/Ad.pm
+++ b/lib/WebGUI/Asset/Sku/Ad.pm
@@ -622,5 +622,6 @@ sub www_renew {
return $self->www_view;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/Donation.pm b/lib/WebGUI/Asset/Sku/Donation.pm
index a3e2db681..485e340a6 100644
--- a/lib/WebGUI/Asset/Sku/Donation.pm
+++ b/lib/WebGUI/Asset/Sku/Donation.pm
@@ -187,4 +187,5 @@ sub www_donate {
return $self->www_view;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/EMSBadge.pm b/lib/WebGUI/Asset/Sku/EMSBadge.pm
index 9777ce689..12422c2b9 100644
--- a/lib/WebGUI/Asset/Sku/EMSBadge.pm
+++ b/lib/WebGUI/Asset/Sku/EMSBadge.pm
@@ -519,4 +519,5 @@ sub www_edit {
return $self->processStyle('
'.$i18n->get('ems badge').'
'.$self->getEditForm->print);
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/EMSRibbon.pm b/lib/WebGUI/Asset/Sku/EMSRibbon.pm
index 6aebc89d6..b510b2de9 100644
--- a/lib/WebGUI/Asset/Sku/EMSRibbon.pm
+++ b/lib/WebGUI/Asset/Sku/EMSRibbon.pm
@@ -287,4 +287,5 @@ sub www_viewAll {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/EMSTicket.pm b/lib/WebGUI/Asset/Sku/EMSTicket.pm
index 5b7dd8411..23688db94 100644
--- a/lib/WebGUI/Asset/Sku/EMSTicket.pm
+++ b/lib/WebGUI/Asset/Sku/EMSTicket.pm
@@ -591,4 +591,5 @@ sub www_viewAll {
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/EMSToken.pm b/lib/WebGUI/Asset/Sku/EMSToken.pm
index 1cb38e7d7..5ecb9c084 100644
--- a/lib/WebGUI/Asset/Sku/EMSToken.pm
+++ b/lib/WebGUI/Asset/Sku/EMSToken.pm
@@ -281,4 +281,5 @@ sub www_viewAll {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/FlatDiscount.pm b/lib/WebGUI/Asset/Sku/FlatDiscount.pm
index 770119c4a..f25926bab 100644
--- a/lib/WebGUI/Asset/Sku/FlatDiscount.pm
+++ b/lib/WebGUI/Asset/Sku/FlatDiscount.pm
@@ -239,4 +239,5 @@ sub www_addToCart {
return $self->www_view;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/Product.pm b/lib/WebGUI/Asset/Sku/Product.pm
index e5fec5b86..0cefe97c8 100644
--- a/lib/WebGUI/Asset/Sku/Product.pm
+++ b/lib/WebGUI/Asset/Sku/Product.pm
@@ -1879,5 +1879,6 @@ override www_view => sub {
super();
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/Subscription.pm b/lib/WebGUI/Asset/Sku/Subscription.pm
index b6f88bd88..9d89dd4ec 100644
--- a/lib/WebGUI/Asset/Sku/Subscription.pm
+++ b/lib/WebGUI/Asset/Sku/Subscription.pm
@@ -1011,5 +1011,6 @@ sub www_redeemSubscriptionCode {
return $self->processStyle($self->processTemplate($var, $self->redeemSubscriptionCodeTemplateId));
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Sku/ThingyRecord.pm b/lib/WebGUI/Asset/Sku/ThingyRecord.pm
index a87725a21..d510325cd 100644
--- a/lib/WebGUI/Asset/Sku/ThingyRecord.pm
+++ b/lib/WebGUI/Asset/Sku/ThingyRecord.pm
@@ -721,6 +721,7 @@ sub www_renew {
return $self->www_editRecord( { message => $i18n->get('renewal added to cart') . ' ^ViewCart;' } );
} ## end sub www_renew
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Snippet.pm b/lib/WebGUI/Asset/Snippet.pm
index 78e998c42..f65bca0a8 100644
--- a/lib/WebGUI/Asset/Snippet.pm
+++ b/lib/WebGUI/Asset/Snippet.pm
@@ -312,6 +312,6 @@ sub www_view {
return $output;
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Story.pm b/lib/WebGUI/Asset/Story.pm
index 648c1852f..fe4dcbdc9 100644
--- a/lib/WebGUI/Asset/Story.pm
+++ b/lib/WebGUI/Asset/Story.pm
@@ -920,6 +920,7 @@ sub www_view {
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Template.pm b/lib/WebGUI/Asset/Template.pm
index 1c5bc1e37..82175ee7b 100644
--- a/lib/WebGUI/Asset/Template.pm
+++ b/lib/WebGUI/Asset/Template.pm
@@ -1174,5 +1174,6 @@ sub www_view {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/WikiPage.pm b/lib/WebGUI/Asset/WikiPage.pm
index a8c22fb1e..caa5ac6a7 100644
--- a/lib/WebGUI/Asset/WikiPage.pm
+++ b/lib/WebGUI/Asset/WikiPage.pm
@@ -647,5 +647,5 @@ sub www_view {
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject.pm b/lib/WebGUI/Asset/Wobject.pm
index 1b35dcaed..13313f0f4 100644
--- a/lib/WebGUI/Asset/Wobject.pm
+++ b/lib/WebGUI/Asset/Wobject.pm
@@ -517,5 +517,6 @@ sub www_view {
return "chunked";
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Article.pm b/lib/WebGUI/Asset/Wobject/Article.pm
index c75bca557..b457fbf6a 100644
--- a/lib/WebGUI/Asset/Wobject/Article.pm
+++ b/lib/WebGUI/Asset/Wobject/Article.pm
@@ -438,5 +438,6 @@ override www_view => sub {
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Calendar.pm b/lib/WebGUI/Asset/Wobject/Calendar.pm
index db9b43e68..d88ea0004 100644
--- a/lib/WebGUI/Asset/Wobject/Calendar.pm
+++ b/lib/WebGUI/Asset/Wobject/Calendar.pm
@@ -2200,5 +2200,6 @@ toUserTimeZone methods of WebGUI::DateTime for to make less confusion.
=cut
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Carousel.pm b/lib/WebGUI/Asset/Wobject/Carousel.pm
index 963660eb4..61bc36be3 100644
--- a/lib/WebGUI/Asset/Wobject/Carousel.pm
+++ b/lib/WebGUI/Asset/Wobject/Carousel.pm
@@ -217,5 +217,6 @@ sub view {
return $self->processTemplate($var, undef, $self->{_viewTemplate});
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Wobject/Collaboration.pm b/lib/WebGUI/Asset/Wobject/Collaboration.pm
index b53992401..4b724d779 100644
--- a/lib/WebGUI/Asset/Wobject/Collaboration.pm
+++ b/lib/WebGUI/Asset/Wobject/Collaboration.pm
@@ -1750,5 +1750,6 @@ sub www_viewRSS {
return $self->www_viewRss;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Collaboration/Newsletter.pm b/lib/WebGUI/Asset/Wobject/Collaboration/Newsletter.pm
index 8d5ab9436..6bbeecb90 100644
--- a/lib/WebGUI/Asset/Wobject/Collaboration/Newsletter.pm
+++ b/lib/WebGUI/Asset/Wobject/Collaboration/Newsletter.pm
@@ -230,4 +230,5 @@ sub www_mySubscriptionsSave {
return $self->www_view;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Dashboard.pm b/lib/WebGUI/Asset/Wobject/Dashboard.pm
index 4c3f09d3c..02f6f2894 100644
--- a/lib/WebGUI/Asset/Wobject/Dashboard.pm
+++ b/lib/WebGUI/Asset/Wobject/Dashboard.pm
@@ -434,4 +434,5 @@ sub www_view {
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/DataForm.pm b/lib/WebGUI/Asset/Wobject/DataForm.pm
index 1cde30a3b..6049abea5 100644
--- a/lib/WebGUI/Asset/Wobject/DataForm.pm
+++ b/lib/WebGUI/Asset/Wobject/DataForm.pm
@@ -2185,5 +2185,6 @@ sub www_process {
return '';
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/DataTable.pm b/lib/WebGUI/Asset/Wobject/DataTable.pm
index 9c0f570cc..adbd3e061 100644
--- a/lib/WebGUI/Asset/Wobject/DataTable.pm
+++ b/lib/WebGUI/Asset/Wobject/DataTable.pm
@@ -278,4 +278,5 @@ sub www_ajaxUpdateData {
return $data;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/EventManagementSystem.pm b/lib/WebGUI/Asset/Wobject/EventManagementSystem.pm
index 0457c7713..83a726f78 100644
--- a/lib/WebGUI/Asset/Wobject/EventManagementSystem.pm
+++ b/lib/WebGUI/Asset/Wobject/EventManagementSystem.pm
@@ -2766,5 +2766,6 @@ sub www_viewSubmissionQueue {
$self->processTemplate( $params, $self->get('eventSubmissionMainTemplateId')));
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Folder.pm b/lib/WebGUI/Asset/Wobject/Folder.pm
index 575b1eefd..673a413bb 100644
--- a/lib/WebGUI/Asset/Wobject/Folder.pm
+++ b/lib/WebGUI/Asset/Wobject/Folder.pm
@@ -296,5 +296,6 @@ override www_view => sub {
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Gallery.pm b/lib/WebGUI/Asset/Wobject/Gallery.pm
index b19322bfa..b26614832 100644
--- a/lib/WebGUI/Asset/Wobject/Gallery.pm
+++ b/lib/WebGUI/Asset/Wobject/Gallery.pm
@@ -1580,4 +1580,5 @@ sub www_listFilesForUserRss {
return $self->processTemplate( $var, $self->templateIdListFilesForUserRss );
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm b/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm
index c0ed7a479..132d92206 100644
--- a/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm
+++ b/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm
@@ -1612,4 +1612,5 @@ sub www_viewRss {
return $self->processTemplate( $var, $self->getParent->templateIdViewAlbumRss );
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/HttpProxy.pm b/lib/WebGUI/Asset/Wobject/HttpProxy.pm
index 901bcef2f..803447cab 100644
--- a/lib/WebGUI/Asset/Wobject/HttpProxy.pm
+++ b/lib/WebGUI/Asset/Wobject/HttpProxy.pm
@@ -507,4 +507,5 @@ sub www_view {
}
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/InOutBoard.pm b/lib/WebGUI/Asset/Wobject/InOutBoard.pm
index 88e62ca0b..dcc168bd4 100644
--- a/lib/WebGUI/Asset/Wobject/InOutBoard.pm
+++ b/lib/WebGUI/Asset/Wobject/InOutBoard.pm
@@ -566,5 +566,6 @@ order by department, lastName, firstName, InOutBoard_statusLog.dateStamp";
return $self->processStyle($self->processTemplate(\%var, $self->reportTemplateId));
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Layout.pm b/lib/WebGUI/Asset/Wobject/Layout.pm
index 6ee065de9..671582994 100644
--- a/lib/WebGUI/Asset/Wobject/Layout.pm
+++ b/lib/WebGUI/Asset/Wobject/Layout.pm
@@ -444,5 +444,6 @@ override www_view => sub {
return super();
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Map.pm b/lib/WebGUI/Asset/Wobject/Map.pm
index a9a3fe036..d05193c6d 100644
--- a/lib/WebGUI/Asset/Wobject/Map.pm
+++ b/lib/WebGUI/Asset/Wobject/Map.pm
@@ -631,6 +631,7 @@ sub www_ajaxSetPointLocation {
return JSON->new->encode( {message => $i18n->get("message set point location")} );
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Wobject/Matrix.pm b/lib/WebGUI/Asset/Wobject/Matrix.pm
index eaeacae0c..867ec429f 100644
--- a/lib/WebGUI/Asset/Wobject/Matrix.pm
+++ b/lib/WebGUI/Asset/Wobject/Matrix.pm
@@ -1447,4 +1447,5 @@ sub www_setStickied {
return undef;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/MessageBoard.pm b/lib/WebGUI/Asset/Wobject/MessageBoard.pm
index b2db08a68..05d8f94a4 100644
--- a/lib/WebGUI/Asset/Wobject/MessageBoard.pm
+++ b/lib/WebGUI/Asset/Wobject/MessageBoard.pm
@@ -172,6 +172,7 @@ override www_view => sub {
super();
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/MultiSearch.pm b/lib/WebGUI/Asset/Wobject/MultiSearch.pm
index ff88000e1..b58b0e58b 100644
--- a/lib/WebGUI/Asset/Wobject/MultiSearch.pm
+++ b/lib/WebGUI/Asset/Wobject/MultiSearch.pm
@@ -132,4 +132,5 @@ override www_view => sub {
super();
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Navigation.pm b/lib/WebGUI/Asset/Wobject/Navigation.pm
index 67308aa29..7926ef82d 100644
--- a/lib/WebGUI/Asset/Wobject/Navigation.pm
+++ b/lib/WebGUI/Asset/Wobject/Navigation.pm
@@ -557,5 +557,6 @@ override www_view => sub {
}
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Poll.pm b/lib/WebGUI/Asset/Wobject/Poll.pm
index 98b1aacc3..b56132443 100644
--- a/lib/WebGUI/Asset/Wobject/Poll.pm
+++ b/lib/WebGUI/Asset/Wobject/Poll.pm
@@ -557,5 +557,6 @@ sub www_vote {
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/ProjectManager.pm b/lib/WebGUI/Asset/Wobject/ProjectManager.pm
index 1c7840ed1..5b3209ac9 100644
--- a/lib/WebGUI/Asset/Wobject/ProjectManager.pm
+++ b/lib/WebGUI/Asset/Wobject/ProjectManager.pm
@@ -1985,5 +1985,5 @@ sub www_viewProject {
return $self->processStyle($self->processTemplate($var,$self->projectDisplayTemplateId));
}
-
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/SQLReport.pm b/lib/WebGUI/Asset/Wobject/SQLReport.pm
index 114cd3546..a7dc617cc 100644
--- a/lib/WebGUI/Asset/Wobject/SQLReport.pm
+++ b/lib/WebGUI/Asset/Wobject/SQLReport.pm
@@ -869,5 +869,6 @@ override www_view => sub {
super();
};
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Search.pm b/lib/WebGUI/Asset/Wobject/Search.pm
index ce5329e13..33c14728b 100644
--- a/lib/WebGUI/Asset/Wobject/Search.pm
+++ b/lib/WebGUI/Asset/Wobject/Search.pm
@@ -208,5 +208,6 @@ sub view {
return $self->processTemplate(\%var, undef, $self->{_viewTemplate});
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Shelf.pm b/lib/WebGUI/Asset/Wobject/Shelf.pm
index c4bffd4e7..a46ca7ec1 100644
--- a/lib/WebGUI/Asset/Wobject/Shelf.pm
+++ b/lib/WebGUI/Asset/Wobject/Shelf.pm
@@ -419,4 +419,5 @@ sub www_importProducts {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/StockData.pm b/lib/WebGUI/Asset/Wobject/StockData.pm
index 6a4a17031..f71b53a2d 100644
--- a/lib/WebGUI/Asset/Wobject/StockData.pm
+++ b/lib/WebGUI/Asset/Wobject/StockData.pm
@@ -401,4 +401,5 @@ sub www_displayStock {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/StoryArchive.pm b/lib/WebGUI/Asset/Wobject/StoryArchive.pm
index fd51f84b2..8b381d3ca 100644
--- a/lib/WebGUI/Asset/Wobject/StoryArchive.pm
+++ b/lib/WebGUI/Asset/Wobject/StoryArchive.pm
@@ -602,5 +602,6 @@ sub www_add {
$todayFolder->www_add;
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Wobject/StoryTopic.pm b/lib/WebGUI/Asset/Wobject/StoryTopic.pm
index 620648c77..53aaf03cd 100644
--- a/lib/WebGUI/Asset/Wobject/StoryTopic.pm
+++ b/lib/WebGUI/Asset/Wobject/StoryTopic.pm
@@ -256,5 +256,6 @@ sub www_viewStory {
}
+__PACKAGE__->meta->make_immutable;
1;
#vim:ft=perl
diff --git a/lib/WebGUI/Asset/Wobject/Survey.pm b/lib/WebGUI/Asset/Wobject/Survey.pm
index e6625b054..551eb0aae 100644
--- a/lib/WebGUI/Asset/Wobject/Survey.pm
+++ b/lib/WebGUI/Asset/Wobject/Survey.pm
@@ -3091,4 +3091,5 @@ END_SUMMARY
}
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/SyndicatedContent.pm b/lib/WebGUI/Asset/Wobject/SyndicatedContent.pm
index c8efaeb82..7517a4b52 100644
--- a/lib/WebGUI/Asset/Wobject/SyndicatedContent.pm
+++ b/lib/WebGUI/Asset/Wobject/SyndicatedContent.pm
@@ -403,5 +403,6 @@ sub www_viewRSS20 {
return $self->www_viewRss;
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/Thingy.pm b/lib/WebGUI/Asset/Wobject/Thingy.pm
index 2ee798035..f554f28a4 100644
--- a/lib/WebGUI/Asset/Wobject/Thingy.pm
+++ b/lib/WebGUI/Asset/Wobject/Thingy.pm
@@ -3574,4 +3574,5 @@ sub www_viewThingDataViaAjax {
}
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/TimeTracking.pm b/lib/WebGUI/Asset/Wobject/TimeTracking.pm
index 7160d18c7..8882b452c 100644
--- a/lib/WebGUI/Asset/Wobject/TimeTracking.pm
+++ b/lib/WebGUI/Asset/Wobject/TimeTracking.pm
@@ -883,4 +883,5 @@ sub _buildRow {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/UserList.pm b/lib/WebGUI/Asset/Wobject/UserList.pm
index 86c896cb1..3d155c858 100644
--- a/lib/WebGUI/Asset/Wobject/UserList.pm
+++ b/lib/WebGUI/Asset/Wobject/UserList.pm
@@ -618,4 +618,5 @@ sub view {
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/WeatherData.pm b/lib/WebGUI/Asset/Wobject/WeatherData.pm
index 194fcace4..344f938a5 100644
--- a/lib/WebGUI/Asset/Wobject/WeatherData.pm
+++ b/lib/WebGUI/Asset/Wobject/WeatherData.pm
@@ -141,4 +141,5 @@ sub view {
return $self->processTemplate(\%var, undef, $self->{_viewTemplate});
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Asset/Wobject/WikiMaster.pm b/lib/WebGUI/Asset/Wobject/WikiMaster.pm
index 6320c18e3..746bfa27d 100644
--- a/lib/WebGUI/Asset/Wobject/WikiMaster.pm
+++ b/lib/WebGUI/Asset/Wobject/WikiMaster.pm
@@ -751,4 +751,5 @@ sub www_search {
return $self->processStyle($self->processTemplate($var, $self->searchTemplateId));
}
+__PACKAGE__->meta->make_immutable;
1;
diff --git a/lib/WebGUI/Definition/Meta/Asset.pm b/lib/WebGUI/Definition/Meta/Asset.pm
index 3e70971bc..1627b958c 100644
--- a/lib/WebGUI/Definition/Meta/Asset.pm
+++ b/lib/WebGUI/Definition/Meta/Asset.pm
@@ -76,9 +76,17 @@ Returns an array of the names of all tables in every class used by this class.
=cut
sub get_tables {
+ my $self = shift;
+ if ($self->is_immutable) {
+ return @{ $self->{__immutable}{get_tables_methods} ||= [ $self->_get_tables ] };
+ }
+ goto &_get_tables;
+}
+
+sub _get_tables {
my $self = shift;
my %seen = ();
- my @tables =
+ my @tables =
grep { ! $seen{$_}++ }
map { $_->tableName }
$self->get_all_properties
diff --git a/lib/WebGUI/Definition/Meta/Class.pm b/lib/WebGUI/Definition/Meta/Class.pm
index 98797db3f..1b2bab583 100644
--- a/lib/WebGUI/Definition/Meta/Class.pm
+++ b/lib/WebGUI/Definition/Meta/Class.pm
@@ -76,6 +76,14 @@ Returns an array of all attribute names across all meta classes.
=cut
sub get_all_attributes_list {
+ my $self = shift;
+ if ($self->is_immutable) {
+ return @{ $self->{__immutable}{get_all_attributes_list} ||= [ $self->_get_all_attributes_list ] };
+ }
+ goto &_get_all_attributes_list;
+}
+
+sub _get_all_attributes_list {
my $self = shift;
my @attributes = ();
CLASS: foreach my $meta ($self->get_all_class_metas) {