/*
 * Decompiled with CFR 0_110.
 * 
 * Could not load the following classes:
 *  java.lang.Object
 *  java.lang.String
 *  java.util.Map
 *  org.jaxen.VariableContext
 */
package org.dom4j.util;

import java.util.Map;
import org.dom4j.Attribute;
import org.dom4j.CDATA;
import org.dom4j.Comment;
import org.dom4j.Document;
import org.dom4j.DocumentFactory;
import org.dom4j.DocumentType;
import org.dom4j.Element;
import org.dom4j.Entity;
import org.dom4j.Namespace;
import org.dom4j.NodeFilter;
import org.dom4j.ProcessingInstruction;
import org.dom4j.QName;
import org.dom4j.Text;
import org.dom4j.XPath;
import org.dom4j.rule.Pattern;
import org.jaxen.VariableContext;

public abstract class ProxyDocumentFactory {
    private DocumentFactory proxy;

    public ProxyDocumentFactory() {
        this.proxy = DocumentFactory.getInstance();
    }

    public ProxyDocumentFactory(DocumentFactory documentFactory) {
        this.proxy = documentFactory;
    }

    public Attribute createAttribute(Element element, String string2, String string3) {
        return this.proxy.createAttribute(element, string2, string3);
    }

    public Attribute createAttribute(Element element, QName qName, String string2) {
        return this.proxy.createAttribute(element, qName, string2);
    }

    public CDATA createCDATA(String string2) {
        return this.proxy.createCDATA(string2);
    }

    public Comment createComment(String string2) {
        return this.proxy.createComment(string2);
    }

    public DocumentType createDocType(String string2, String string3, String string4) {
        return this.proxy.createDocType(string2, string3, string4);
    }

    public Document createDocument() {
        return this.proxy.createDocument();
    }

    public Document createDocument(Element element) {
        return this.proxy.createDocument(element);
    }

    public Element createElement(String string2) {
        return this.proxy.createElement(string2);
    }

    public Element createElement(QName qName) {
        return this.proxy.createElement(qName);
    }

    public Entity createEntity(String string2, String string3) {
        return this.proxy.createEntity(string2, string3);
    }

    public Namespace createNamespace(String string2, String string3) {
        return this.proxy.createNamespace(string2, string3);
    }

    public Pattern createPattern(String string2) {
        return this.proxy.createPattern(string2);
    }

    public ProcessingInstruction createProcessingInstruction(String string2, String string3) {
        return this.proxy.createProcessingInstruction(string2, string3);
    }

    public ProcessingInstruction createProcessingInstruction(String string2, Map map) {
        return this.proxy.createProcessingInstruction(string2, map);
    }

    public QName createQName(String string2) {
        return this.proxy.createQName(string2);
    }

    public QName createQName(String string2, String string3) {
        return this.proxy.createQName(string2, string3);
    }

    public QName createQName(String string2, String string3, String string4) {
        return this.proxy.createQName(string2, string3, string4);
    }

    public QName createQName(String string2, Namespace namespace) {
        return this.proxy.createQName(string2, namespace);
    }

    public Text createText(String string2) {
        return this.proxy.createText(string2);
    }

    public XPath createXPath(String string2) {
        return this.proxy.createXPath(string2);
    }

    public XPath createXPath(String string2, VariableContext variableContext) {
        return this.proxy.createXPath(string2, variableContext);
    }

    public NodeFilter createXPathFilter(String string2) {
        return this.proxy.createXPathFilter(string2);
    }

    public NodeFilter createXPathFilter(String string2, VariableContext variableContext) {
        return this.proxy.createXPathFilter(string2, variableContext);
    }

    protected DocumentFactory getProxy() {
        return this.proxy;
    }

    protected void setProxy(DocumentFactory documentFactory) {
        if (documentFactory == null) {
            documentFactory = DocumentFactory.getInstance();
        }
        this.proxy = documentFactory;
    }
}

