final class com.sun.jndi.dns.BindingEnumeration extends com.sun.jndi.dns.BaseNameClassPairEnumeration<javax.naming.Binding> implements javax.naming.NamingEnumeration<javax.naming.Binding>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.sun.jndi.dns.BindingEnumeration
  super_class: com.sun.jndi.dns.BaseNameClassPairEnumeration
{
  void <init>(com.sun.jndi.dns.DnsContext, java.util.Hashtable<java.lang.String, com.sun.jndi.dns.NameNode>);
    descriptor: (Lcom/sun/jndi/dns/DnsContext;Ljava/util/Hashtable;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.jndi.dns.BindingEnumeration this
        start local 1 // com.sun.jndi.dns.DnsContext ctx
        start local 2 // java.util.Hashtable nodes
         0: .line 1050
            aload 0 /* this */
            aload 1 /* ctx */
            aload 2 /* nodes */
            invokespecial com.sun.jndi.dns.BaseNameClassPairEnumeration.<init>:(Lcom/sun/jndi/dns/DnsContext;Ljava/util/Hashtable;)V
         1: .line 1051
            return
        end local 2 // java.util.Hashtable nodes
        end local 1 // com.sun.jndi.dns.DnsContext ctx
        end local 0 // com.sun.jndi.dns.BindingEnumeration this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/jndi/dns/BindingEnumeration;
            0    2     1    ctx  Lcom/sun/jndi/dns/DnsContext;
            0    2     2  nodes  Ljava/util/Hashtable<Ljava/lang/String;Lcom/sun/jndi/dns/NameNode;>;
    Signature: (Lcom/sun/jndi/dns/DnsContext;Ljava/util/Hashtable<Ljava/lang/String;Lcom/sun/jndi/dns/NameNode;>;)V
    MethodParameters:
       Name  Flags
      ctx    
      nodes  

  public javax.naming.Binding next();
    descriptor: ()Ljavax/naming/Binding;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=1
        start local 0 // com.sun.jndi.dns.BindingEnumeration this
         0: .line 1060
            aload 0 /* this */
            invokevirtual com.sun.jndi.dns.BindingEnumeration.hasMore:()Z
            ifne 2
         1: .line 1061
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 1063
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.jndi.dns.BindingEnumeration.nodes:Ljava/util/Enumeration;
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast com.sun.jndi.dns.NameNode
            astore 1 /* nnode */
        start local 1 // com.sun.jndi.dns.NameNode nnode
         3: .line 1065
            aload 1 /* nnode */
            invokevirtual com.sun.jndi.dns.NameNode.getLabel:()Ljava/lang/String;
            astore 2 /* label */
        start local 2 // java.lang.String label
         4: .line 1066
            new com.sun.jndi.dns.DnsName
            dup
            invokespecial com.sun.jndi.dns.DnsName.<init>:()V
            aload 2 /* label */
            invokevirtual com.sun.jndi.dns.DnsName.add:(Ljava/lang/String;)Ljavax/naming/Name;
            astore 3 /* compName */
        start local 3 // javax.naming.Name compName
         5: .line 1067
            aload 3 /* compName */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 4 /* compNameStr */
        start local 4 // java.lang.String compNameStr
         6: .line 1068
            new javax.naming.CompositeName
            dup
            invokespecial javax.naming.CompositeName.<init>:()V
            aload 4 /* compNameStr */
            invokevirtual javax.naming.CompositeName.add:(Ljava/lang/String;)Ljavax/naming/Name;
            astore 5 /* cname */
        start local 5 // javax.naming.Name cname
         7: .line 1069
            aload 5 /* cname */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 6 /* cnameStr */
        start local 6 // java.lang.String cnameStr
         8: .line 1071
            aload 0 /* this */
            getfield com.sun.jndi.dns.BindingEnumeration.ctx:Lcom/sun/jndi/dns/DnsContext;
            aload 3 /* compName */
            invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
            astore 7 /* fqdn */
        start local 7 // com.sun.jndi.dns.DnsName fqdn
         9: .line 1074
            new com.sun.jndi.dns.DnsContext
            dup
            aload 0 /* this */
            getfield com.sun.jndi.dns.BindingEnumeration.ctx:Lcom/sun/jndi/dns/DnsContext;
            aload 7 /* fqdn */
            invokespecial com.sun.jndi.dns.DnsContext.<init>:(Lcom/sun/jndi/dns/DnsContext;Lcom/sun/jndi/dns/DnsName;)V
            astore 8 /* child */
        start local 8 // com.sun.jndi.dns.DnsContext child
        10: .line 1078
            aload 8 /* child */
            aload 5 /* cname */
            aload 0 /* this */
            getfield com.sun.jndi.dns.BindingEnumeration.ctx:Lcom/sun/jndi/dns/DnsContext;
            aload 8 /* child */
            getfield com.sun.jndi.dns.DnsContext.environment:Ljava/util/Hashtable;
            aconst_null
        11: .line 1077
            invokestatic javax.naming.spi.DirectoryManager.getObjectInstance:(Ljava/lang/Object;Ljavax/naming/Name;Ljavax/naming/Context;Ljava/util/Hashtable;Ljavax/naming/directory/Attributes;)Ljava/lang/Object;
            astore 9 /* obj */
        start local 9 // java.lang.Object obj
        12: .line 1079
            new javax.naming.Binding
            dup
            aload 6 /* cnameStr */
            aload 9 /* obj */
            invokespecial javax.naming.Binding.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
            astore 10 /* binding */
        start local 10 // javax.naming.Binding binding
        13: .line 1080
            aload 10 /* binding */
            aload 0 /* this */
            getfield com.sun.jndi.dns.BindingEnumeration.ctx:Lcom/sun/jndi/dns/DnsContext;
            aload 5 /* cname */
            invokevirtual com.sun.jndi.dns.DnsContext.fullyQualify:(Ljavax/naming/Name;)Lcom/sun/jndi/dns/DnsName;
            invokevirtual com.sun.jndi.dns.DnsName.toString:()Ljava/lang/String;
            invokevirtual javax.naming.Binding.setNameInNamespace:(Ljava/lang/String;)V
        14: .line 1081
            aload 10 /* binding */
        15: areturn
        end local 10 // javax.naming.Binding binding
        end local 9 // java.lang.Object obj
        16: .line 1082
      StackMap locals: com.sun.jndi.dns.BindingEnumeration com.sun.jndi.dns.NameNode java.lang.String javax.naming.Name java.lang.String javax.naming.Name java.lang.String com.sun.jndi.dns.DnsName com.sun.jndi.dns.DnsContext
      StackMap stack: java.lang.Exception
            astore 9 /* e */
        start local 9 // java.lang.Exception e
        17: .line 1083
            new javax.naming.NamingException
            dup
        18: .line 1084
            ldc "Problem generating object using object factory"
        19: .line 1083
            invokespecial javax.naming.NamingException.<init>:(Ljava/lang/String;)V
            astore 10 /* ne */
        start local 10 // javax.naming.NamingException ne
        20: .line 1085
            aload 10 /* ne */
            aload 9 /* e */
            invokevirtual javax.naming.NamingException.setRootCause:(Ljava/lang/Throwable;)V
        21: .line 1086
            aload 10 /* ne */
            athrow
        end local 10 // javax.naming.NamingException ne
        end local 9 // java.lang.Exception e
        end local 8 // com.sun.jndi.dns.DnsContext child
        end local 7 // com.sun.jndi.dns.DnsName fqdn
        end local 6 // java.lang.String cnameStr
        end local 5 // javax.naming.Name cname
        end local 4 // java.lang.String compNameStr
        end local 3 // javax.naming.Name compName
        end local 2 // java.lang.String label
        end local 1 // com.sun.jndi.dns.NameNode nnode
        end local 0 // com.sun.jndi.dns.BindingEnumeration this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lcom/sun/jndi/dns/BindingEnumeration;
            3   22     1        nnode  Lcom/sun/jndi/dns/NameNode;
            4   22     2        label  Ljava/lang/String;
            5   22     3     compName  Ljavax/naming/Name;
            6   22     4  compNameStr  Ljava/lang/String;
            7   22     5        cname  Ljavax/naming/Name;
            8   22     6     cnameStr  Ljava/lang/String;
            9   22     7         fqdn  Lcom/sun/jndi/dns/DnsName;
           10   22     8        child  Lcom/sun/jndi/dns/DnsContext;
           12   16     9          obj  Ljava/lang/Object;
           13   16    10      binding  Ljavax/naming/Binding;
           17   22     9            e  Ljava/lang/Exception;
           20   22    10           ne  Ljavax/naming/NamingException;
      Exception table:
        from    to  target  type
          10    15      16  Class java.lang.Exception
    Exceptions:
      throws javax.naming.NamingException

  public java.lang.Object next();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.jndi.dns.BindingEnumeration.next:()Ljavax/naming/Binding;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws javax.naming.NamingException
}
Signature: Lcom/sun/jndi/dns/BaseNameClassPairEnumeration<Ljavax/naming/Binding;>;Ljavax/naming/NamingEnumeration<Ljavax/naming/Binding;>;
SourceFile: "DnsContext.java"