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 )