X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FReplicated.pm;h=a70a8b56c3d6910b63b3e4c103cfbd16c7d5df69;hp=7323b42c9475c2d3dae9da894121028d11055125;hb=17b05c131035f73964c434c1a9c8b28e46aebeeb;hpb=a5ebb8769b79f6d6ce7a01001d7b41b62386f425 diff --git a/lib/DBIx/Class/Storage/DBI/Replicated.pm b/lib/DBIx/Class/Storage/DBI/Replicated.pm index 7323b42..a70a8b5 100644 --- a/lib/DBIx/Class/Storage/DBI/Replicated.pm +++ b/lib/DBIx/Class/Storage/DBI/Replicated.pm @@ -73,18 +73,6 @@ has 'pool_type' => ( }, ); -=head2 pool_args - -Contains a hashref of initialized information to pass to the Pool object. See -L for available arguments. - -=cut - -has 'pool_args' => ( - is=>'ro', - isa=>'HashRef', -); - =head2 balancer_type The replication pool requires a balance class to provider the methods for @@ -101,6 +89,18 @@ has 'balancer_type' => ( }, ); +=head2 balancer_args + +Contains a hashref of initialized information to pass to the Balancer object. +See L for available arguments. + +=cut + +has 'balancer_args' => ( + is=>'ro', + isa=>'HashRef', +); + =head2 pool Is a or derived class. This is a @@ -116,9 +116,6 @@ has 'pool' => ( connect_replicants replicants has_replicants - num_replicants - delete_replicant - validate_replicants /], ); @@ -133,6 +130,7 @@ has 'balancer' => ( is=>'ro', isa=>'DBIx::Class::Storage::DBI::Replicated::Balancer', lazy_build=>1, + handles=>[qw/auto_validate_every/], ); =head2 master @@ -272,7 +270,7 @@ Lazy builder for the L attribute. sub _build_pool { my $self = shift @_; - $self->create_pool($self->pool_args); + $self->create_pool; } =head2 _build_balancer_type @@ -282,7 +280,7 @@ Lazy builder for the L attribute. =cut sub _build_balancer_type { - return 'DBIx::Class::Storage::DBI::Replicated::Balancer'; + return 'DBIx::Class::Storage::DBI::Replicated::Balancer::First'; } =head2 _build_balancer @@ -296,7 +294,8 @@ sub _build_balancer { my $self = shift @_; $self->create_balancer( pool=>$self->pool, - master=>$self->master); + master=>$self->master, + %{$self->balancer_args},); } =head2 _build_write_handler