::DBI::Replicated - add master_read_weight to ::Random balancer_type
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / Replicated / Types.pm
index c363a4b..b66748f 100644 (file)
@@ -9,8 +9,8 @@ L<DBIx::Class::Storage::DBI::Replicated>
 =cut
 
 use MooseX::Types
-  -declare => [qw/BalancerClassNamePart/];
-use MooseX::Types::Moose qw/ClassName Str/;
+  -declare => [qw/BalancerClassNamePart Weight/];
+use MooseX::Types::Moose qw/ClassName Str Num/;
 
 class_type 'DBIx::Class::Storage::DBI';
 class_type 'DBIx::Class::Schema';
@@ -29,6 +29,11 @@ coerce BalancerClassNamePart,
     $type;     
   };
 
+subtype Weight,
+  as Num,
+  where { $_ >= 0 && $_ <= 1 },
+  message { 'weight must be a decimal between 0 and 1' };
+
 =head1 AUTHOR
 
   John Napiorkowski <john.napiorkowski@takkle.com>