Beta Shell
v2.0 ยท web2.us.cloudlogin.co
[FM]
[CMD]
[PHP]
[DB]
[INFO]
[SEC]
File Manager
~
/
usr
/
share
/
perl5
/
vendor_perl
/
Class
/
DBI
/
Cascade
Upload
5 items
Name
Size
Perms
Modified
Actions
[ .. / .. ]
Delete.pm
355 B
-rw-r--r--
2005-09-14 20:02:49
Edit
Del
Fail.pm
545 B
-rw-r--r--
2005-09-14 20:02:49
Edit
Del
None.pm
1.51 KB
-rw-r--r--
2005-09-14 20:02:49
Edit
Del
Editing: Fail.pm
(545 B)
Path: /usr/share/perl5/vendor_perl/Class/DBI/Cascade/Fail.pm
Back
package Class::DBI::Cascade::Fail; =head1 NAME Class::DBI::Cascade::Fail - Do not cascade if foreign objects exist =head1 DESCRIPTION This is a Cascading Delete strategy that will throw an error if any object about to be deleted still has any other objects pointing at it. =cut use strict; use warnings; use base 'Class::DBI::Cascade::None'; sub cascade { my ($self, $obj) = @_; my $refs = $self->foreign_for($obj)->count or return; $self->{_rel}->foreign_class->_croak( "$refs objects still refer to $obj. Deletion failed"); } 1;