/*
 * Decompiled with CFR 0_110.
 * 
 * Could not load the following classes:
 *  java.lang.String
 *  org.w3c.dom.Attr
 *  org.w3c.dom.DOMException
 *  org.w3c.dom.Document
 *  org.w3c.dom.Element
 *  org.w3c.dom.NamedNodeMap
 *  org.w3c.dom.Node
 *  org.w3c.dom.NodeList
 */
package org.dom4j.dom;

import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.QName;
import org.dom4j.dom.DOMNodeHelper;
import org.dom4j.tree.DefaultAttribute;
import org.w3c.dom.Attr;
import org.w3c.dom.DOMException;
import org.w3c.dom.Document;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.NodeList;

public class DOMAttribute
extends DefaultAttribute
implements Attr {
    public DOMAttribute(Element element, QName qName, String string2) {
        super(element, qName, string2);
    }

    public DOMAttribute(QName qName) {
        super(qName);
    }

    public DOMAttribute(QName qName, String string2) {
        super(qName, string2);
    }

    private void checkNewChildNode(org.w3c.dom.Node node) throws DOMException {
        short s = node.getNodeType();
        if (s != 3 && s != 5) {
            throw new DOMException(3, "The node cannot be a child of attribute");
        }
    }

    public org.w3c.dom.Node appendChild(org.w3c.dom.Node node) throws DOMException {
        super.checkNewChildNode(node);
        return DOMNodeHelper.appendChild((Node)this, node);
    }

    public org.w3c.dom.Node cloneNode(boolean bl) {
        return DOMNodeHelper.cloneNode((Node)this, bl);
    }

    public NamedNodeMap getAttributes() {
        return null;
    }

    public NodeList getChildNodes() {
        return DOMNodeHelper.getChildNodes(this);
    }

    public org.w3c.dom.Node getFirstChild() {
        return DOMNodeHelper.getFirstChild(this);
    }

    public org.w3c.dom.Node getLastChild() {
        return DOMNodeHelper.getLastChild(this);
    }

    public String getLocalName() {
        return this.getQName().getName();
    }

    @Override
    public String getNamespaceURI() {
        return this.getQName().getNamespaceURI();
    }

    public org.w3c.dom.Node getNextSibling() {
        return DOMNodeHelper.getNextSibling(this);
    }

    public String getNodeName() {
        return this.getName();
    }

    public String getNodeValue() throws DOMException {
        return DOMNodeHelper.getNodeValue(this);
    }

    public Document getOwnerDocument() {
        return DOMNodeHelper.getOwnerDocument(this);
    }

    public org.w3c.dom.Element getOwnerElement() {
        return DOMNodeHelper.asDOMElement(this.getParent());
    }

    public org.w3c.dom.Node getParentNode() {
        return null;
    }

    public String getPrefix() {
        return this.getQName().getNamespacePrefix();
    }

    public org.w3c.dom.Node getPreviousSibling() {
        return DOMNodeHelper.getPreviousSibling(this);
    }

    public boolean getSpecified() {
        return true;
    }

    public boolean hasAttributes() {
        return DOMNodeHelper.hasAttributes(this);
    }

    public boolean hasChildNodes() {
        return DOMNodeHelper.hasChildNodes(this);
    }

    public org.w3c.dom.Node insertBefore(org.w3c.dom.Node node, org.w3c.dom.Node node2) throws DOMException {
        super.checkNewChildNode(node);
        return DOMNodeHelper.insertBefore((Node)this, node, node2);
    }

    public boolean isSupported(String string2, String string3) {
        return DOMNodeHelper.isSupported((Node)this, string2, string3);
    }

    public void normalize() {
        DOMNodeHelper.normalize(this);
    }

    public org.w3c.dom.Node removeChild(org.w3c.dom.Node node) throws DOMException {
        return DOMNodeHelper.removeChild((Node)this, node);
    }

    public org.w3c.dom.Node replaceChild(org.w3c.dom.Node node, org.w3c.dom.Node node2) throws DOMException {
        super.checkNewChildNode(node);
        return DOMNodeHelper.replaceChild((Node)this, node, node2);
    }

    public void setNodeValue(String string2) throws DOMException {
        DOMNodeHelper.setNodeValue((Node)this, string2);
    }

    public void setPrefix(String string2) throws DOMException {
        DOMNodeHelper.setPrefix((Node)this, string2);
    }

    public boolean supports(String string2, String string3) {
        return DOMNodeHelper.supports((Node)this, string2, string3);
    }
}

