class org.apache.commons.configuration.XMLConfiguration$XMLNode extends org.apache.commons.configuration.HierarchicalConfiguration$Node
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.commons.configuration.XMLConfiguration$XMLNode
  super_class: org.apache.commons.configuration.HierarchicalConfiguration$Node
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -4133988932174596562

  final org.apache.commons.configuration.XMLConfiguration this$0;
    descriptor: Lorg/apache/commons/configuration/XMLConfiguration;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(org.apache.commons.configuration.XMLConfiguration, java.lang.String, org.w3c.dom.Element);
    descriptor: (Lorg/apache/commons/configuration/XMLConfiguration;Ljava/lang/String;Lorg/w3c/dom/Element;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
        start local 2 // java.lang.String name
        start local 3 // org.w3c.dom.Element elem
         0: .line 1316
            aload 0 /* this */
            aload 1
            putfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
         1: .line 1317
            aload 0 /* this */
            aload 2 /* name */
            invokespecial org.apache.commons.configuration.HierarchicalConfiguration$Node.<init>:(Ljava/lang/String;)V
         2: .line 1318
            aload 0 /* this */
            aload 3 /* elem */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.setReference:(Ljava/lang/Object;)V
         3: .line 1319
            return
        end local 3 // org.w3c.dom.Element elem
        end local 2 // java.lang.String name
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;
            0    4     2  name  Ljava/lang/String;
            0    4     3  elem  Lorg/w3c/dom/Element;
    MethodParameters:
        Name  Flags
      this$0  final
      name    
      elem    

  public void setValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
        start local 1 // java.lang.Object value
         0: .line 1330
            aload 0 /* this */
            aload 1 /* value */
            invokespecial org.apache.commons.configuration.HierarchicalConfiguration$Node.setValue:(Ljava/lang/Object;)V
         1: .line 1332
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            ifnull 6
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            getfield org.apache.commons.configuration.XMLConfiguration.document:Lorg/w3c/dom/Document;
            ifnull 6
         2: .line 1334
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.isAttribute:()Z
            ifeq 5
         3: .line 1336
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.updateAttribute:()V
         4: .line 1337
            goto 6
         5: .line 1340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.updateElement:(Ljava/lang/Object;)V
         6: .line 1343
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object value
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;
            0    7     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  protected void removeReference();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
         0: .line 1351
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            ifnull 8
         1: .line 1353
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            astore 1 /* element */
        start local 1 // org.w3c.dom.Element element
         2: .line 1354
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.isAttribute:()Z
            ifeq 5
         3: .line 1356
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.updateAttribute:()V
         4: .line 1357
            goto 8
         5: .line 1360
      StackMap locals: org.w3c.dom.Element
      StackMap stack:
            aload 1 /* element */
            invokeinterface org.w3c.dom.Element.getParentNode:()Lorg/w3c/dom/Node;
            astore 2 /* parentElem */
        start local 2 // org.w3c.dom.Node parentElem
         6: .line 1361
            aload 2 /* parentElem */
            ifnull 8
         7: .line 1363
            aload 2 /* parentElem */
            aload 1 /* element */
            invokeinterface org.w3c.dom.Node.removeChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 2 // org.w3c.dom.Node parentElem
        end local 1 // org.w3c.dom.Element element
         8: .line 1367
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;
            2    8     1     element  Lorg/w3c/dom/Element;
            6    8     2  parentElem  Lorg/w3c/dom/Node;

  private void updateElement(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
        start local 1 // java.lang.Object value
         0: .line 1376
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.findTextNodeForUpdate:()Lorg/w3c/dom/Text;
            astore 2 /* txtNode */
        start local 2 // org.w3c.dom.Text txtNode
         1: .line 1377
            aload 1 /* value */
            ifnonnull 5
         2: .line 1380
            aload 2 /* txtNode */
            ifnull 21
         3: .line 1382
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            aload 2 /* txtNode */
            invokeinterface org.w3c.dom.Element.removeChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
         4: .line 1384
            goto 21
         5: .line 1387
      StackMap locals: org.w3c.dom.Text
      StackMap stack:
            aload 2 /* txtNode */
            ifnonnull 17
         6: .line 1389
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.isDelimiterParsingDisabled:()Z
            ifeq 7
            aload 1 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            goto 8
         7: .line 1390
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.getListDelimiter:()C
            invokestatic org.apache.commons.configuration.PropertyConverter.escapeDelimiters:(Ljava/lang/String;C)Ljava/lang/String;
         8: .line 1389
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* newValue */
        start local 3 // java.lang.String newValue
         9: .line 1391
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            getfield org.apache.commons.configuration.XMLConfiguration.document:Lorg/w3c/dom/Document;
            aload 3 /* newValue */
            invokeinterface org.w3c.dom.Document.createTextNode:(Ljava/lang/String;)Lorg/w3c/dom/Text;
            astore 2 /* txtNode */
        10: .line 1392
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
            ifnull 15
        11: .line 1394
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            aload 2 /* txtNode */
        12: .line 1395
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            invokeinterface org.w3c.dom.Element.getFirstChild:()Lorg/w3c/dom/Node;
        13: .line 1394
            invokeinterface org.w3c.dom.Element.insertBefore:(Lorg/w3c/dom/Node;Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        14: .line 1396
            goto 21
        15: .line 1399
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            aload 2 /* txtNode */
            invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 3 // java.lang.String newValue
        16: .line 1401
            goto 21
        17: .line 1404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.isDelimiterParsingDisabled:()Z
            ifeq 18
            aload 1 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            goto 19
        18: .line 1405
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.getListDelimiter:()C
            invokestatic org.apache.commons.configuration.PropertyConverter.escapeDelimiters:(Ljava/lang/String;C)Ljava/lang/String;
        19: .line 1404
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* newValue */
        start local 3 // java.lang.String newValue
        20: .line 1406
            aload 2 /* txtNode */
            aload 3 /* newValue */
            invokeinterface org.w3c.dom.Text.setNodeValue:(Ljava/lang/String;)V
        end local 3 // java.lang.String newValue
        21: .line 1409
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.w3c.dom.Text txtNode
        end local 1 // java.lang.Object value
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   22     0      this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;
            0   22     1     value  Ljava/lang/Object;
            1   22     2   txtNode  Lorg/w3c/dom/Text;
            9   16     3  newValue  Ljava/lang/String;
           20   21     3  newValue  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      value  

  private void updateAttribute();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
         0: .line 1417
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getParent:()Lorg/apache/commons/configuration/HierarchicalConfiguration$Node;
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.getListDelimiter:()C
         1: .line 1418
            aload 0 /* this */
            getfield org.apache.commons.configuration.XMLConfiguration$XMLNode.this$0:Lorg/apache/commons/configuration/XMLConfiguration;
            invokevirtual org.apache.commons.configuration.XMLConfiguration.isAttributeSplittingDisabled:()Z
         2: .line 1417
            invokestatic org.apache.commons.configuration.XMLConfiguration$XMLBuilderVisitor.updateAttribute:(Lorg/apache/commons/configuration/HierarchicalConfiguration$Node;Ljava/lang/String;CZ)V
         3: .line 1419
            return
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;

  private org.w3c.dom.Text findTextNodeForUpdate();
    descriptor: ()Lorg/w3c/dom/Text;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=7, args_size=1
        start local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
         0: .line 1431
            aconst_null
            astore 1 /* result */
        start local 1 // org.w3c.dom.Text result
         1: .line 1432
            aload 0 /* this */
            invokevirtual org.apache.commons.configuration.XMLConfiguration$XMLNode.getReference:()Ljava/lang/Object;
            checkcast org.w3c.dom.Element
            astore 2 /* elem */
        start local 2 // org.w3c.dom.Element elem
         2: .line 1434
            aload 2 /* elem */
            invokeinterface org.w3c.dom.Element.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 3 /* children */
        start local 3 // org.w3c.dom.NodeList children
         3: .line 1435
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* textNodes */
        start local 4 // java.util.Collection textNodes
         4: .line 1436
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 13
         6: .line 1438
      StackMap locals: org.apache.commons.configuration.XMLConfiguration$XMLNode org.w3c.dom.Text org.w3c.dom.Element org.w3c.dom.NodeList java.util.Collection int
      StackMap stack:
            aload 3 /* children */
            iload 5 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 6 /* nd */
        start local 6 // org.w3c.dom.Node nd
         7: .line 1439
            aload 6 /* nd */
            instanceof org.w3c.dom.Text
            ifeq 12
         8: .line 1441
            aload 1 /* result */
            ifnonnull 11
         9: .line 1443
            aload 6 /* nd */
            checkcast org.w3c.dom.Text
            astore 1 /* result */
        10: .line 1444
            goto 12
        11: .line 1447
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
            aload 4 /* textNodes */
            aload 6 /* nd */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // org.w3c.dom.Node nd
        12: .line 1436
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* i */
            aload 3 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            if_icmplt 6
        end local 5 // int i
        14: .line 1453
            aload 1 /* result */
            instanceof org.w3c.dom.CDATASection
            ifeq 17
        15: .line 1455
            aload 4 /* textNodes */
            aload 1 /* result */
            invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
            pop
        16: .line 1456
            aconst_null
            astore 1 /* result */
        17: .line 1460
      StackMap locals:
      StackMap stack:
            aload 4 /* textNodes */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 20
      StackMap locals: org.apache.commons.configuration.XMLConfiguration$XMLNode org.w3c.dom.Text org.w3c.dom.Element org.w3c.dom.NodeList java.util.Collection top java.util.Iterator
      StackMap stack:
        18: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.w3c.dom.Node
            astore 5 /* tn */
        start local 5 // org.w3c.dom.Node tn
        19: .line 1462
            aload 2 /* elem */
            aload 5 /* tn */
            invokeinterface org.w3c.dom.Element.removeChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
            pop
        end local 5 // org.w3c.dom.Node tn
        20: .line 1460
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        21: .line 1464
            aload 1 /* result */
            areturn
        end local 4 // java.util.Collection textNodes
        end local 3 // org.w3c.dom.NodeList children
        end local 2 // org.w3c.dom.Element elem
        end local 1 // org.w3c.dom.Text result
        end local 0 // org.apache.commons.configuration.XMLConfiguration$XMLNode this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0       this  Lorg/apache/commons/configuration/XMLConfiguration$XMLNode;
            1   22     1     result  Lorg/w3c/dom/Text;
            2   22     2       elem  Lorg/w3c/dom/Element;
            3   22     3   children  Lorg/w3c/dom/NodeList;
            4   22     4  textNodes  Ljava/util/Collection<Lorg/w3c/dom/Node;>;
            5   14     5          i  I
            7   12     6         nd  Lorg/w3c/dom/Node;
           19   20     5         tn  Lorg/w3c/dom/Node;
}
SourceFile: "XMLConfiguration.java"
NestHost: org.apache.commons.configuration.XMLConfiguration
InnerClasses:
  public Node = org.apache.commons.configuration.HierarchicalConfiguration$Node of org.apache.commons.configuration.HierarchicalConfiguration
  XMLBuilderVisitor = org.apache.commons.configuration.XMLConfiguration$XMLBuilderVisitor of org.apache.commons.configuration.XMLConfiguration
  XMLNode = org.apache.commons.configuration.XMLConfiguration$XMLNode of org.apache.commons.configuration.XMLConfiguration