AnyEvent-DNS-Cache-Simple
view release on metacpan or search on metacpan
lib/AnyEvent/DNS/Cache/Simple.pm view on Meta::CPAN
use 5.008005;
use strict;
use warnings;
use base qw/AnyEvent::DNS/;
use Cache::Memory::Simple;
use List::Util qw//;
use Time::HiRes qw//;
our $VERSION = "0.02";
sub request($$) {
my ($self, $req, $cb) = @_;
my ($name, $qtype, $class) = @{$req->{qd}[0]};
my $cache_key = "$class $qtype $name"; #compatibility with Net::DNS::Lite
if ( my $cached = $self->{adcs_cache}->get($cache_key) ) {
my ($res,$expires_at) = @$cached;
if ( $expires_at < Time::HiRes::time ) {
undef $res;
$self->{adcs_cache}->remove($cache_key)
}
if ( !defined $res ) {
( run in 0.863 second using v1.01-cache-2.11-cpan-65fba6d93b7 )