summaryrefslogtreecommitdiff
path: root/lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm')
-rw-r--r--lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm31
1 files changed, 15 insertions, 16 deletions
diff --git a/lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm b/lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm
index e647f6a..2bb6251 100644
--- a/lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm
+++ b/lib/Plack/Middleware/APIRateLimit/Backend/Redis.pm
@@ -3,41 +3,40 @@ package Plack::Middleware::APIRateLimit::Backend::Redis;
use Moose;
extends 'Plack::Middleware::APIRateLimit::Backend';
-use AnyEvent::Redis;
+use Redis;
has store => (
is => 'rw',
- isa => 'AnyEvent::Redis',
+ isa => 'Redis',
lazy => 1,
default => sub {
- return AnyEvent::Redis->new(
- host => '127.0.0.1',
- port => 6378,
+ return Redis->new(
+ server => '127.0.0.1:6379'
);
}
);
sub BUILD {
- my $self = shift;
- if (scalar @_) {
- $self->store(AnyEvent::Redis->new(@_));
+ my ( $self, $opt ) = @_;
+ if ($opt) {
+ $self->store( Redis->new(%$opt) );
}
return $self;
}
sub get {
my ( $self, $key ) = @_;
- my $val = $self->store->get($key)->recv;
- if ( !$val ) {
- $self->store->set( $key => 1 )->recv;
- $val = 1;
- }
- return $val;
+ $self->store->get($key);
+}
+
+sub set {
+ my ($self, $key, $value) = @_;
+ $self->store->set($key, $value);
}
sub incr {
- my ($self, $key) = @_;
- return $self->store->incr($key)->recv;
+ my ( $self, $key ) = @_;
+ $self->store->incr($key);
}
1;