X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FStatistics.pm;h=5d0ba470ec0c9352ebdd85e9e70cab261e8368a4;hb=499adf63a229da95792cee478529a7d164f3b44d;hp=ec9edda89bb544b4c828ec462abcea1c95dc1194;hpb=4c24816137de09c629fcd3da41b7626d50cc13f6;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/Storage/Statistics.pm b/lib/DBIx/Class/Storage/Statistics.pm index ec9edda..5d0ba47 100644 --- a/lib/DBIx/Class/Storage/Statistics.pm +++ b/lib/DBIx/Class/Storage/Statistics.pm @@ -1,7 +1,9 @@ package DBIx::Class::Storage::Statistics; use strict; +use warnings; + +use base qw/Class::Accessor::Grouped/; -use base qw/DBIx::Class::AccessorGroup Class::Data::Accessor/; __PACKAGE__->mk_group_accessors(simple => qw/callback debugfh/); =head1 NAME @@ -30,9 +32,10 @@ Returns a new L object. =cut sub new { - my $self = bless({}, ref($_[0]) || $_[0]); + my $self = {}; + bless $self, (ref($_[0]) || $_[0]); - return $self; + return $self; } =head2 debugfh @@ -40,7 +43,7 @@ sub new { Sets or retrieves the filehandle used for trace/debug output. This should be an IO::Handle compatible object (only the C method is used). Initially should be set to STDERR - although see information on the -L environment variable. +L environment variable. =head2 txn_begin @@ -48,7 +51,9 @@ Called when a transaction begins. =cut sub txn_begin { - my $self = shift(); + my $self = shift; + + $self->debugfh->print("BEGIN WORK\n"); } =head2 txn_rollback @@ -57,7 +62,9 @@ Called when a transaction is rolled back. =cut sub txn_rollback { - my $self = shift(); + my $self = shift; + + $self->debugfh->print("ROLLBACK\n"); } =head2 txn_commit @@ -66,7 +73,9 @@ Called when a transaction is committed. =cut sub txn_commit { - my $self = shift(); + my $self = shift; + + $self->debugfh->print("COMMIT\n"); } =head2 query_start @@ -76,16 +85,17 @@ executed and subsequent arguments are the parameters used for the query. =cut sub query_start { - my $self = shift(); - my $string = shift(); + my ($self, $string, @bind) = @_; + + my $message = "$string: ".join(', ', @bind)."\n"; - if(defined($self->callback())) { - $string =~ m/^(\w+)/; - $self->callback()->($1, $string); - return; - } + if(defined($self->callback)) { + $string =~ m/^(\w+)/; + $self->callback->($1, $message); + return; + } - $self->debugfh->print("$string: " . join(', ', @_) . "\n"); + $self->debugfh->print($message); } =head2 query_end @@ -94,8 +104,7 @@ Called when a query finishes executing. Has the same arguments as query_start. =cut sub query_end { - my $self = shift(); - my $string = shift(); + my ($self, $string) = @_; } 1;