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

#ifndef __org_xml_sax_helpers_ParserAdapter__
#define __org_xml_sax_helpers_ParserAdapter__

#pragma interface

#include <java/lang/Object.h>
#include <gcj/array.h>

extern "Java"
{
  namespace org
  {
    namespace xml
    {
      namespace sax
      {
        class AttributeList;
        class InputSource;
        class ErrorHandler;
        class ContentHandler;
        class DTDHandler;
        class EntityResolver;
        class Locator;
        class Parser;
        namespace helpers
        {
          class ParserAdapter;
          class AttributesImpl;
          class ParserAdapter$AttributeListAdapter;
          class NamespaceSupport;
        }
      }
    }
  }
};

class ::org::xml::sax::helpers::ParserAdapter : public ::java::lang::Object
{
public:
  ParserAdapter ();
  ParserAdapter (::org::xml::sax::Parser *);
private:
  void setup (::org::xml::sax::Parser *);
public:
  virtual void setFeature (::java::lang::String *, jboolean);
  virtual jboolean getFeature (::java::lang::String *);
  virtual void setProperty (::java::lang::String *, ::java::lang::Object *);
  virtual ::java::lang::Object *getProperty (::java::lang::String *);
  virtual void setEntityResolver (::org::xml::sax::EntityResolver *);
  virtual ::org::xml::sax::EntityResolver *getEntityResolver () { return entityResolver; }
  virtual void setDTDHandler (::org::xml::sax::DTDHandler *);
  virtual ::org::xml::sax::DTDHandler *getDTDHandler () { return dtdHandler; }
  virtual void setContentHandler (::org::xml::sax::ContentHandler *);
  virtual ::org::xml::sax::ContentHandler *getContentHandler () { return contentHandler; }
  virtual void setErrorHandler (::org::xml::sax::ErrorHandler *);
  virtual ::org::xml::sax::ErrorHandler *getErrorHandler () { return errorHandler; }
  virtual void parse (::java::lang::String *);
  virtual void parse (::org::xml::sax::InputSource *);
  virtual void setDocumentLocator (::org::xml::sax::Locator *);
  virtual void startDocument ();
  virtual void endDocument ();
  virtual void startElement (::java::lang::String *, ::org::xml::sax::AttributeList *);
  virtual void endElement (::java::lang::String *);
  virtual void characters (jcharArray, jint, jint);
  virtual void ignorableWhitespace (jcharArray, jint, jint);
  virtual void processingInstruction (::java::lang::String *, ::java::lang::String *);
private:
  void setupParser ();
  JArray< ::java::lang::String *> *processName (::java::lang::String *, jboolean);
public: // actually package-private
  virtual void reportError (::java::lang::String *);
private:
  void checkNotParsing (::java::lang::String *, ::java::lang::String *);
  static ::java::lang::String *FEATURES;
  static ::java::lang::String *NAMESPACES;
  static ::java::lang::String *NAMESPACE_PREFIXES;
  static ::java::lang::String *VALIDATION;
  static ::java::lang::String *EXTERNAL_GENERAL;
  static ::java::lang::String *EXTERNAL_PARAMETER;
  ::org::xml::sax::helpers::NamespaceSupport *nsSupport;
  ::org::xml::sax::helpers::ParserAdapter$AttributeListAdapter *attAdapter;
  jboolean parsing;
  JArray< ::java::lang::String *> *nameParts;
  ::org::xml::sax::Parser *parser;
  ::org::xml::sax::helpers::AttributesImpl *atts;
  jboolean namespaces;
  jboolean prefixes;
public: // actually package-private
  ::org::xml::sax::Locator *locator;
  ::org::xml::sax::EntityResolver *entityResolver;
  ::org::xml::sax::DTDHandler *dtdHandler;
  ::org::xml::sax::ContentHandler *contentHandler;
  ::org::xml::sax::ErrorHandler *errorHandler;
public:

  static ::java::lang::Class class$;
};

#endif /* __org_xml_sax_helpers_ParserAdapter__ */
