has_a works
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / CDBICompat / Triggers.pm
1 package DBIx::Class::CDBICompat::Triggers;
2
3 use Class::Trigger;
4
5 sub insert {
6   my $self = shift;
7   $self->call_trigger('before_create');
8   $self->NEXT::ACTUAL::insert(@_);
9   $self->call_trigger('after_create');
10   return $self;
11 }
12
13 sub update {
14   my $self = shift;
15   $self->call_trigger('before_update');
16   my @to_update = keys %{$self->{_dirty_columns} || {}};
17   return -1 unless @to_update;
18   $self->NEXT::ACTUAL::update(@_);
19   $self->call_trigger('after_update');
20   return $self;
21 }
22
23 sub delete {
24   my $self = shift;
25   $self->call_trigger('before_delete') if ref $self;
26   $self->NEXT::ACTUAL::delete(@_);
27   $self->call_trigger('after_delete') if ref $self;
28   return $self;
29 }
30
31 1;