
// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __gnu_xml_libxmlj_dom_GnomeDocument__
#define __gnu_xml_libxmlj_dom_GnomeDocument__

#pragma interface

#include <gnu/xml/libxmlj/dom/GnomeNode.h>
extern "Java"
{
  namespace gnu
  {
    namespace xml
    {
      namespace libxmlj
      {
        namespace dom
        {
            class GnomeDocument;
        }
      }
    }
  }
  namespace org
  {
    namespace w3c
    {
      namespace dom
      {
          class Attr;
          class CDATASection;
          class Comment;
          class DOMConfiguration;
          class DOMErrorHandler;
          class DOMImplementation;
          class DOMStringList;
          class DocumentFragment;
          class DocumentType;
          class Element;
          class EntityReference;
          class Node;
          class NodeList;
          class ProcessingInstruction;
          class Text;
        namespace traversal
        {
            class NodeFilter;
            class NodeIterator;
            class TreeWalker;
        }
        namespace xpath
        {
            class XPathExpression;
            class XPathNSResolver;
        }
      }
    }
  }
}

class gnu::xml::libxmlj::dom::GnomeDocument : public ::gnu::xml::libxmlj::dom::GnomeNode
{

public: // actually package-private
  GnomeDocument(::java::lang::Object *);
public: // actually protected
  virtual void finalize();
private:
  void free(::java::lang::Object *);
public:
  virtual ::org::w3c::dom::DocumentType * getDoctype();
  virtual ::org::w3c::dom::DOMImplementation * getImplementation();
  virtual ::org::w3c::dom::Element * getDocumentElement();
  virtual ::org::w3c::dom::Element * createElement(::java::lang::String *);
  virtual ::org::w3c::dom::DocumentType * createDocumentType(::java::lang::String *, ::java::lang::String *, ::java::lang::String *);
  virtual ::org::w3c::dom::DocumentFragment * createDocumentFragment();
  virtual ::org::w3c::dom::Text * createTextNode(::java::lang::String *);
  virtual ::org::w3c::dom::Comment * createComment(::java::lang::String *);
  virtual ::org::w3c::dom::CDATASection * createCDATASection(::java::lang::String *);
  virtual ::org::w3c::dom::ProcessingInstruction * createProcessingInstruction(::java::lang::String *, ::java::lang::String *);
  virtual ::org::w3c::dom::Attr * createAttribute(::java::lang::String *);
  virtual ::org::w3c::dom::EntityReference * createEntityReference(::java::lang::String *);
  virtual ::org::w3c::dom::NodeList * getElementsByTagName(::java::lang::String *);
  virtual ::org::w3c::dom::Node * importNode(::org::w3c::dom::Node *, jboolean);
private:
  ::org::w3c::dom::Node * xmljImportNode(::org::w3c::dom::Node *, jboolean);
public:
  virtual ::org::w3c::dom::Element * createElementNS(::java::lang::String *, ::java::lang::String *);
  virtual ::org::w3c::dom::Attr * createAttributeNS(::java::lang::String *, ::java::lang::String *);
  virtual ::org::w3c::dom::NodeList * getElementsByTagNameNS(::java::lang::String *, ::java::lang::String *);
  virtual ::org::w3c::dom::Element * getElementById(::java::lang::String *);
private:
  ::org::w3c::dom::Element * xmljGetElementById(::java::lang::String *);
public:
  virtual ::java::lang::String * getInputEncoding();
  virtual ::java::lang::String * getXmlEncoding();
  virtual jboolean getXmlStandalone();
  virtual void setXmlStandalone(jboolean);
  virtual ::java::lang::String * getXmlVersion();
  virtual void setXmlVersion(::java::lang::String *);
  virtual jboolean getStrictErrorChecking();
  virtual void setStrictErrorChecking(jboolean);
  virtual ::java::lang::String * getDocumentURI();
  virtual void setDocumentURI(::java::lang::String *);
  virtual ::org::w3c::dom::Node * adoptNode(::org::w3c::dom::Node *);
private:
  ::org::w3c::dom::Node * xmljAdoptNode(::org::w3c::dom::Node *);
public:
  virtual ::org::w3c::dom::DOMConfiguration * getDomConfig();
  virtual void normalizeDocument();
  virtual ::org::w3c::dom::Node * renameNode(::org::w3c::dom::Node *, ::java::lang::String *, ::java::lang::String *);
  virtual void setParameter(::java::lang::String *, ::java::lang::Object *);
  virtual ::java::lang::Object * getParameter(::java::lang::String *);
  virtual jboolean canSetParameter(::java::lang::String *, ::java::lang::Object *);
  virtual ::org::w3c::dom::DOMStringList * getParameterNames();
private:
  jboolean getBooleanValue(::java::lang::Object *);
public:
  virtual ::org::w3c::dom::xpath::XPathExpression * createExpression(::java::lang::String *, ::org::w3c::dom::xpath::XPathNSResolver *);
  virtual ::org::w3c::dom::xpath::XPathNSResolver * createNSResolver(::org::w3c::dom::Node *);
  virtual ::java::lang::Object * evaluate(::java::lang::String *, ::org::w3c::dom::Node *, ::org::w3c::dom::xpath::XPathNSResolver *, jshort, ::java::lang::Object *);
  virtual ::org::w3c::dom::traversal::NodeIterator * createNodeIterator(::org::w3c::dom::Node *, jint, ::org::w3c::dom::traversal::NodeFilter *, jboolean);
  virtual ::org::w3c::dom::traversal::TreeWalker * createTreeWalker(::org::w3c::dom::Node *, jint, ::org::w3c::dom::traversal::NodeFilter *, jboolean);
  virtual ::java::lang::String * toString();
public: // actually package-private
  ::org::w3c::dom::DOMImplementation * __attribute__((aligned(__alignof__( ::gnu::xml::libxmlj::dom::GnomeNode)))) dom;
  jboolean strictErrorChecking;
  jboolean canonicalForm;
  jboolean cdataSections;
  jboolean checkCharacterNormalization;
  jboolean comments;
  jboolean datatypeNormalization;
  jboolean elementContentWhitespace;
  jboolean entities;
  ::org::w3c::dom::DOMErrorHandler * errorHandler;
  jboolean namespaces;
  jboolean namespaceDeclarations;
  jboolean normalizeCharacters;
  jboolean splitCdataSections;
  jboolean validate;
  jboolean validateIfSchema;
  jboolean wellFormed;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_xml_libxmlj_dom_GnomeDocument__
