changes to replication so that if a replicant is offline when we do the initial conne...
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / Replicated / Replicant.pm
index 7449146..e9612f3 100644 (file)
@@ -1,10 +1,11 @@
 package DBIx::Class::Storage::DBI::Replicated::Replicant;
 
 use Moose::Role;
+requires qw/_query_start/;
 
 =head1 NAME
 
-DBIx::Class::Storage::DBI::Replicated::Replicant; A replicated DBI Storage Role
+DBIx::Class::Storage::DBI::Replicated::Replicant - A replicated DBI Storage Role
 
 =head1 SYNOPSIS
 
@@ -40,29 +41,43 @@ storage driver for more information.
 =cut
 
 has 'active' => (
-    is=>'rw',
-    isa=>'Bool',
-    lazy=>1,
-    required=>1,
-    default=>1,
+  is=>'rw',
+  isa=>'Bool',
+  lazy=>1,
+  required=>1,
+  default=>1,
 );
 
 =head1 METHODS
 
 This class defines the following methods.
 
-=head2 after: _query_start
+=head2 around: _query_start
 
 advice iof the _query_start method to add more debuggin
 
 =cut
 
 around '_query_start' => sub {
-    my ($method, $self, $sql, @bind) = @_;
-    my $dsn = $self->connect_info->[0];
-    $self->$method("DSN: $dsn SQL: $sql", @bind);
+  my ($method, $self, $sql, @bind) = @_;
+  my $dsn = $self->_dbi_connect_info->[0];
+  $self->$method("DSN: $dsn SQL: $sql", @bind);
 };
 
+=head2 debugobj
+
+Override the debugobj method to redirect this method call back to the master.
+
+=cut
+
+sub debugobj {
+    return shift->schema->storage->debugobj;
+}
+
+=head1 ALSO SEE
+
+L<<a href="http://en.wikipedia.org/wiki/Replicant">http://en.wikipedia.org/wiki/Replicant</a>>
+
 =head1 AUTHOR
 
 John Napiorkowski <john.napiorkowski@takkle.com>