public Node insertAfter(NodeList nodes, Node refChild)
public void insertAfter(NodeList nodes, Node refChild)
    public Node insertAfter(NodeList nodes, Node refChild)            throws DOMException {        if (refChild == null)            return appendChildren(nodes, -1);        if (!(refChild instanceof NodeImpl))            throw new DOMException(DOMException.WRONG_DOCUMENT_ERR, "wrong node type: ");        final DocumentImpl prevDoc = new DocumentImpl(ownerDocument);        final NodeImpl ref = (NodeImpl) refChild;        final long first = firstChildID();        if (ref.gid < first || ref.gid > ref.gid + children - 1)            throw new DOMException(DOMException.HIERARCHY_REQUEST_ERR,                    "reference node is not a child of the selected node");        final int level = ownerDocument.getTreeLevel(gid);        Node result = appendChildren(ref.gid + 1, getLastNode(ref), getPath(), nodes, false);        ownerDocument.broker.update(this);        if (ownerDocument.reindex > -1) {            ownerDocument.reindex = level + 1;            ownerDocument.broker.reindex(prevDoc, ownerDocument, null);        }        else {            ownerDocument.reindex = level + 1;            ownerDocument.broker.reindex(prevDoc, ownerDocument, this);        }        return result;    }