public class io.netty.resolver.dns.DefaultDnsCache implements io.netty.resolver.dns.DnsCache
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.netty.resolver.dns.DefaultDnsCache
  super_class: java.lang.Object
{
  private final java.util.concurrent.ConcurrentMap<java.lang.String, io.netty.resolver.dns.DefaultDnsCache$Entries> resolveCache;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/String;Lio/netty/resolver/dns/DefaultDnsCache$Entries;>;

  private static final int MAX_SUPPORTED_TTL_SECS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final int minTtl;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int maxTtl;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int negativeTtl;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 48
            getstatic java.util.concurrent.TimeUnit.DAYS:Ljava/util/concurrent/TimeUnit;
            ldc 730
            invokevirtual java.util.concurrent.TimeUnit.toSeconds:(J)J
            l2i
            putstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 58
            aload 0 /* this */
            iconst_0
            getstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            iconst_0
            invokespecial io.netty.resolver.dns.DefaultDnsCache.<init>:(III)V
         1: .line 59
            return
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/netty/resolver/dns/DefaultDnsCache;

  public void <init>(int, int, int);
    descriptor: (III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // int minTtl
        start local 2 // int maxTtl
        start local 3 // int negativeTtl
         0: .line 67
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            invokestatic io.netty.util.internal.PlatformDependent.newConcurrentHashMap:()Ljava/util/concurrent/ConcurrentMap;
            putfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
         2: .line 68
            aload 0 /* this */
            getstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            iload 1 /* minTtl */
            ldc "minTtl"
            invokestatic io.netty.util.internal.ObjectUtil.checkPositiveOrZero:(ILjava/lang/String;)I
            invokestatic java.lang.Math.min:(II)I
            putfield io.netty.resolver.dns.DefaultDnsCache.minTtl:I
         3: .line 69
            aload 0 /* this */
            getstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            iload 2 /* maxTtl */
            ldc "maxTtl"
            invokestatic io.netty.util.internal.ObjectUtil.checkPositiveOrZero:(ILjava/lang/String;)I
            invokestatic java.lang.Math.min:(II)I
            putfield io.netty.resolver.dns.DefaultDnsCache.maxTtl:I
         4: .line 70
            iload 1 /* minTtl */
            iload 2 /* maxTtl */
            if_icmple 8
         5: .line 71
            new java.lang.IllegalArgumentException
            dup
         6: .line 72
            new java.lang.StringBuilder
            dup
            ldc "minTtl: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* minTtl */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", maxTtl: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 2 /* maxTtl */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (expected: 0 <= minTtl <= maxTtl)"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 71
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 74
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache int int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* negativeTtl */
            ldc "negativeTtl"
            invokestatic io.netty.util.internal.ObjectUtil.checkPositiveOrZero:(ILjava/lang/String;)I
            putfield io.netty.resolver.dns.DefaultDnsCache.negativeTtl:I
         9: .line 75
            return
        end local 3 // int negativeTtl
        end local 2 // int maxTtl
        end local 1 // int minTtl
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lio/netty/resolver/dns/DefaultDnsCache;
            0   10     1       minTtl  I
            0   10     2       maxTtl  I
            0   10     3  negativeTtl  I
    MethodParameters:
             Name  Flags
      minTtl       
      maxTtl       
      negativeTtl  

  public int minTtl();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 83
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.minTtl:I
            ireturn
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/resolver/dns/DefaultDnsCache;

  public int maxTtl();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 92
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.maxTtl:I
            ireturn
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/resolver/dns/DefaultDnsCache;

  public int negativeTtl();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 100
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.negativeTtl:I
            ireturn
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/netty/resolver/dns/DefaultDnsCache;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 105
            goto 7
         1: .line 106
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 1 /* i */
        start local 1 // java.util.Iterator i
         2: goto 6
         3: .line 107
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* e */
        start local 2 // java.util.Map$Entry e
         4: .line 108
            aload 1 /* i */
            invokeinterface java.util.Iterator.remove:()V
         5: .line 110
            aload 2 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast io.netty.resolver.dns.DefaultDnsCache$Entries
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$Entries.clearAndCancel:()Z
            pop
        end local 2 // java.util.Map$Entry e
         6: .line 106
      StackMap locals:
      StackMap stack:
            aload 1 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 1 // java.util.Iterator i
         7: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.isEmpty:()Z
            ifeq 1
         8: .line 113
            return
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lio/netty/resolver/dns/DefaultDnsCache;
            2    7     1     i  Ljava/util/Iterator<Ljava/util/Map$Entry<Ljava/lang/String;Lio/netty/resolver/dns/DefaultDnsCache$Entries;>;>;
            4    6     2     e  Ljava/util/Map$Entry<Ljava/lang/String;Lio/netty/resolver/dns/DefaultDnsCache$Entries;>;

  public boolean clear(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // java.lang.String hostname
         0: .line 117
            aload 1 /* hostname */
            ldc "hostname"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 118
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* hostname */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.netty.resolver.dns.DefaultDnsCache$Entries
            astore 2 /* entries */
        start local 2 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
         2: .line 119
            aload 2 /* entries */
            ifnull 3
            aload 2 /* entries */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$Entries.clearAndCancel:()Z
            ifeq 3
            iconst_1
            ireturn
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache$Entries
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
        end local 1 // java.lang.String hostname
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    4     1  hostname  Ljava/lang/String;
            2    4     2   entries  Lio/netty/resolver/dns/DefaultDnsCache$Entries;
    MethodParameters:
          Name  Flags
      hostname  

  private static boolean emptyAdditionals(io.netty.handler.codec.dns.DnsRecord[]);
    descriptor: ([Lio/netty/handler/codec/dns/DnsRecord;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.netty.handler.codec.dns.DnsRecord[] additionals
         0: .line 123
            aload 0 /* additionals */
            ifnull 1
            aload 0 /* additionals */
            arraylength
            ifeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // io.netty.handler.codec.dns.DnsRecord[] additionals
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  additionals  [Lio/netty/handler/codec/dns/DnsRecord;
    MethodParameters:
             Name  Flags
      additionals  

  public java.util.List<? extends io.netty.resolver.dns.DnsCacheEntry> get(java.lang.String, io.netty.handler.codec.dns.DnsRecord[]);
    descriptor: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // java.lang.String hostname
        start local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
         0: .line 128
            aload 1 /* hostname */
            ldc "hostname"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 129
            aload 2 /* additionals */
            invokestatic io.netty.resolver.dns.DefaultDnsCache.emptyAdditionals:([Lio/netty/handler/codec/dns/DnsRecord;)Z
            ifne 3
         2: .line 130
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         3: .line 133
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* hostname */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.netty.resolver.dns.DefaultDnsCache$Entries
            astore 3 /* entries */
        start local 3 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
         4: .line 134
            aload 3 /* entries */
            ifnonnull 5
            aconst_null
            goto 6
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache$Entries
      StackMap stack:
         5: aload 3 /* entries */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$Entries.get:()Ljava/lang/Object;
            checkcast java.util.List
      StackMap locals:
      StackMap stack: java.util.List
         6: areturn
        end local 3 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
        end local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
        end local 1 // java.lang.String hostname
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    7     1     hostname  Ljava/lang/String;
            0    7     2  additionals  [Lio/netty/handler/codec/dns/DnsRecord;
            4    7     3      entries  Lio/netty/resolver/dns/DefaultDnsCache$Entries;
    Signature: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;)Ljava/util/List<+Lio/netty/resolver/dns/DnsCacheEntry;>;
    MethodParameters:
             Name  Flags
      hostname     
      additionals  

  public io.netty.resolver.dns.DnsCacheEntry cache(java.lang.String, io.netty.handler.codec.dns.DnsRecord[], java.net.InetAddress, long, io.netty.channel.EventLoop);
    descriptor: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Ljava/net/InetAddress;JLio/netty/channel/EventLoop;)Lio/netty/resolver/dns/DnsCacheEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=6
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // java.lang.String hostname
        start local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
        start local 3 // java.net.InetAddress address
        start local 4 // long originalTtl
        start local 6 // io.netty.channel.EventLoop loop
         0: .line 140
            aload 1 /* hostname */
            ldc "hostname"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 141
            aload 3 /* address */
            ldc "address"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 142
            aload 6 /* loop */
            ldc "loop"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 143
            new io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry
            dup
            aload 1 /* hostname */
            aload 3 /* address */
            invokespecial io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry.<init>:(Ljava/lang/String;Ljava/net/InetAddress;)V
            astore 7 /* e */
        start local 7 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
         4: .line 144
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.maxTtl:I
            ifeq 5
            aload 2 /* additionals */
            invokestatic io.netty.resolver.dns.DefaultDnsCache.emptyAdditionals:([Lio/netty/handler/codec/dns/DnsRecord;)Z
            ifne 6
         5: .line 145
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry
      StackMap stack:
            aload 7 /* e */
            areturn
         6: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* e */
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.minTtl:I
            getstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.maxTtl:I
            i2l
            lload 4 /* originalTtl */
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            invokestatic java.lang.Math.min:(II)I
            invokestatic java.lang.Math.max:(II)I
            aload 6 /* loop */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache.cache0:(Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;ILio/netty/channel/EventLoop;)V
         7: .line 148
            aload 7 /* e */
            areturn
        end local 7 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        end local 6 // io.netty.channel.EventLoop loop
        end local 4 // long originalTtl
        end local 3 // java.net.InetAddress address
        end local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
        end local 1 // java.lang.String hostname
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    8     1     hostname  Ljava/lang/String;
            0    8     2  additionals  [Lio/netty/handler/codec/dns/DnsRecord;
            0    8     3      address  Ljava/net/InetAddress;
            0    8     4  originalTtl  J
            0    8     6         loop  Lio/netty/channel/EventLoop;
            4    8     7            e  Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;
    MethodParameters:
             Name  Flags
      hostname     
      additionals  
      address      
      originalTtl  
      loop         

  public io.netty.resolver.dns.DnsCacheEntry cache(java.lang.String, io.netty.handler.codec.dns.DnsRecord[], java.lang.Throwable, io.netty.channel.EventLoop);
    descriptor: (Ljava/lang/String;[Lio/netty/handler/codec/dns/DnsRecord;Ljava/lang/Throwable;Lio/netty/channel/EventLoop;)Lio/netty/resolver/dns/DnsCacheEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // java.lang.String hostname
        start local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
        start local 3 // java.lang.Throwable cause
        start local 4 // io.netty.channel.EventLoop loop
         0: .line 153
            aload 1 /* hostname */
            ldc "hostname"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 154
            aload 3 /* cause */
            ldc "cause"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 155
            aload 4 /* loop */
            ldc "loop"
            invokestatic io.netty.util.internal.ObjectUtil.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 157
            new io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry
            dup
            aload 1 /* hostname */
            aload 3 /* cause */
            invokespecial io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            astore 5 /* e */
        start local 5 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
         4: .line 158
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.negativeTtl:I
            ifeq 5
            aload 2 /* additionals */
            invokestatic io.netty.resolver.dns.DefaultDnsCache.emptyAdditionals:([Lio/netty/handler/codec/dns/DnsRecord;)Z
            ifne 6
         5: .line 159
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry
      StackMap stack:
            aload 5 /* e */
            areturn
         6: .line 162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* e */
            getstatic io.netty.resolver.dns.DefaultDnsCache.MAX_SUPPORTED_TTL_SECS:I
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.negativeTtl:I
            invokestatic java.lang.Math.min:(II)I
            aload 4 /* loop */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache.cache0:(Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;ILio/netty/channel/EventLoop;)V
         7: .line 163
            aload 5 /* e */
            areturn
        end local 5 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        end local 4 // io.netty.channel.EventLoop loop
        end local 3 // java.lang.Throwable cause
        end local 2 // io.netty.handler.codec.dns.DnsRecord[] additionals
        end local 1 // java.lang.String hostname
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    8     1     hostname  Ljava/lang/String;
            0    8     2  additionals  [Lio/netty/handler/codec/dns/DnsRecord;
            0    8     3        cause  Ljava/lang/Throwable;
            0    8     4         loop  Lio/netty/channel/EventLoop;
            4    8     5            e  Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;
    MethodParameters:
             Name  Flags
      hostname     
      additionals  
      cause        
      loop         

  private void cache0(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry, int, io.netty.channel.EventLoop);
    descriptor: (Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;ILio/netty/channel/EventLoop;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        start local 2 // int ttl
        start local 3 // io.netty.channel.EventLoop loop
         0: .line 167
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* e */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry.hostname:()Ljava/lang/String;
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.netty.resolver.dns.DefaultDnsCache$Entries
            astore 4 /* entries */
        start local 4 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
         1: .line 168
            aload 4 /* entries */
            ifnonnull 6
         2: .line 169
            new io.netty.resolver.dns.DefaultDnsCache$Entries
            dup
            aload 1 /* e */
            invokespecial io.netty.resolver.dns.DefaultDnsCache$Entries.<init>:(Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;)V
            astore 4 /* entries */
         3: .line 170
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* e */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry.hostname:()Ljava/lang/String;
            aload 4 /* entries */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.netty.resolver.dns.DefaultDnsCache$Entries
            astore 5 /* oldEntries */
        start local 5 // io.netty.resolver.dns.DefaultDnsCache$Entries oldEntries
         4: .line 171
            aload 5 /* oldEntries */
            ifnull 6
         5: .line 172
            aload 5 /* oldEntries */
            astore 4 /* entries */
        end local 5 // io.netty.resolver.dns.DefaultDnsCache$Entries oldEntries
         6: .line 175
      StackMap locals: io.netty.resolver.dns.DefaultDnsCache$Entries
      StackMap stack:
            aload 4 /* entries */
            aload 1 /* e */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$Entries.add:(Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;)V
         7: .line 177
            aload 0 /* this */
            aload 1 /* e */
            iload 2 /* ttl */
            aload 3 /* loop */
            invokevirtual io.netty.resolver.dns.DefaultDnsCache.scheduleCacheExpiration:(Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;ILio/netty/channel/EventLoop;)V
         8: .line 178
            return
        end local 4 // io.netty.resolver.dns.DefaultDnsCache$Entries entries
        end local 3 // io.netty.channel.EventLoop loop
        end local 2 // int ttl
        end local 1 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    9     1           e  Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;
            0    9     2         ttl  I
            0    9     3        loop  Lio/netty/channel/EventLoop;
            1    9     4     entries  Lio/netty/resolver/dns/DefaultDnsCache$Entries;
            4    6     5  oldEntries  Lio/netty/resolver/dns/DefaultDnsCache$Entries;
    MethodParameters:
      Name  Flags
      e     
      ttl   
      loop  

  private void scheduleCacheExpiration(io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry, int, io.netty.channel.EventLoop);
    descriptor: (Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;ILio/netty/channel/EventLoop;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
        start local 1 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        start local 2 // int ttl
        start local 3 // io.netty.channel.EventLoop loop
         0: .line 183
            aload 1 /* e */
            aload 3 /* loop */
            new io.netty.resolver.dns.DefaultDnsCache$1
            dup
            aload 0 /* this */
            aload 1 /* e */
            invokespecial io.netty.resolver.dns.DefaultDnsCache$1.<init>:(Lio/netty/resolver/dns/DefaultDnsCache;Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;)V
         1: .line 200
            iload 2 /* ttl */
            i2l
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
         2: .line 183
            invokevirtual io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry.scheduleExpiration:(Lio/netty/channel/EventLoop;Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)V
         3: .line 201
            return
        end local 3 // io.netty.channel.EventLoop loop
        end local 2 // int ttl
        end local 1 // io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry e
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/netty/resolver/dns/DefaultDnsCache;
            0    4     1     e  Lio/netty/resolver/dns/DefaultDnsCache$DefaultDnsCacheEntry;
            0    4     2   ttl  I
            0    4     3  loop  Lio/netty/channel/EventLoop;
    MethodParameters:
      Name  Flags
      e     final
      ttl   
      loop  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.netty.resolver.dns.DefaultDnsCache this
         0: .line 205
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
         1: .line 206
            ldc "DefaultDnsCache(minTtl="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 207
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.minTtl:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", maxTtl="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 208
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.maxTtl:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", negativeTtl="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 209
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.negativeTtl:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ", cached resolved hostname="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 210
            aload 0 /* this */
            getfield io.netty.resolver.dns.DefaultDnsCache.resolveCache:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 211
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 205
            areturn
        end local 0 // io.netty.resolver.dns.DefaultDnsCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lio/netty/resolver/dns/DefaultDnsCache;
}
SourceFile: "DefaultDnsCache.java"
NestMembers:
  io.netty.resolver.dns.DefaultDnsCache$1  io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry  io.netty.resolver.dns.DefaultDnsCache$Entries
InnerClasses:
  io.netty.resolver.dns.DefaultDnsCache$1
  private final DefaultDnsCacheEntry = io.netty.resolver.dns.DefaultDnsCache$DefaultDnsCacheEntry of io.netty.resolver.dns.DefaultDnsCache
  private final Entries = io.netty.resolver.dns.DefaultDnsCache$Entries of io.netty.resolver.dns.DefaultDnsCache
  public abstract Entry = java.util.Map$Entry of java.util.Map