From ce47f3bb5e8c69a59b678c8ff8956d8a368bcb32 Mon Sep 17 00:00:00 2001 From: franck cuny Date: Mon, 14 Jun 2010 17:53:00 +0200 Subject: add mx::role::parameterized for replicas, bucket and client --- lib/Net/Riak/Role/Replica.pm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 lib/Net/Riak/Role/Replica.pm (limited to 'lib/Net/Riak/Role/Replica.pm') diff --git a/lib/Net/Riak/Role/Replica.pm b/lib/Net/Riak/Role/Replica.pm new file mode 100644 index 0000000..d990de2 --- /dev/null +++ b/lib/Net/Riak/Role/Replica.pm @@ -0,0 +1,25 @@ +package Net::Riak::Role::Replica; + +use MooseX::Role::Parameterized; + +parameter keys => ( + isa => 'ArrayRef', + required => 1, +); + +role { + my $p = shift; + + my $keys = $p->keys; + + foreach my $k (@$keys) { + has $k => ( + is => 'rw', + isa => 'Int', + lazy => 1, + default => sub { (shift)->client->$k } + ); + } +}; + +1; -- cgit v1.2.3