X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FCDBICompat%2FTriggers.pm;h=3f6aef7a454da3659ad0b2df47c11ee616363620;hb=f92a9d790b900dcb183ff62b4e2e770a53f01ac6;hp=3bf8070cfd5a931d6913e8e58b84bd851d815869;hpb=cc8d8678e3f892f6f20e63bd1e61a17d2f2af288;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/CDBICompat/Triggers.pm b/lib/DBIx/Class/CDBICompat/Triggers.pm index 3bf8070..3f6aef7 100644 --- a/lib/DBIx/Class/CDBICompat/Triggers.pm +++ b/lib/DBIx/Class/CDBICompat/Triggers.pm @@ -1,4 +1,5 @@ -package DBIx::Class::CDBICompat::Triggers; +package # hide from PAUSE + DBIx::Class::CDBICompat::Triggers; use strict; use warnings; @@ -6,8 +7,11 @@ use Class::Trigger; sub insert { my $self = shift; + + return $self->create(@_) unless ref $self; + $self->call_trigger('before_create'); - $self->NEXT::ACTUAL::insert(@_); + $self->next::method(@_); $self->call_trigger('after_create'); return $self; } @@ -17,7 +21,7 @@ sub update { $self->call_trigger('before_update'); my @to_update = keys %{$self->{_dirty_columns} || {}}; return -1 unless @to_update; - $self->NEXT::ACTUAL::update(@_); + $self->next::method(@_); $self->call_trigger('after_update'); return $self; } @@ -25,7 +29,7 @@ sub update { sub delete { my $self = shift; $self->call_trigger('before_delete') if ref $self; - $self->NEXT::ACTUAL::delete(@_); + $self->next::method(@_); $self->call_trigger('after_delete') if ref $self; return $self; } @@ -34,7 +38,7 @@ sub store_column { my ($self, $column, $value, @rest) = @_; my $vals = { $column => $value }; $self->call_trigger("before_set_${column}", $value, $vals); - return $self->NEXT::ACTUAL::store_column($column, $vals->{$column}); + return $self->next::method($column, $vals->{$column}); } 1;