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

#ifndef __gnu_xml_pipeline_NSFilter__
#define __gnu_xml_pipeline_NSFilter__

#pragma interface

#include <gnu/xml/pipeline/EventFilter.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace xml
    {
      namespace pipeline
      {
          class EventConsumer;
          class NSFilter;
      }
    }
  }
  namespace org
  {
    namespace xml
    {
      namespace sax
      {
          class Attributes;
        namespace helpers
        {
            class AttributesImpl;
            class NamespaceSupport;
        }
      }
    }
  }
}

class gnu::xml::pipeline::NSFilter : public ::gnu::xml::pipeline::EventFilter
{

public:
  NSFilter(::gnu::xml::pipeline::EventConsumer *);
private:
  void fatalError(::java::lang::String *);
public:
  virtual void startDocument();
  virtual void startPrefixMapping(::java::lang::String *, ::java::lang::String *);
private:
  ::java::lang::String * fixName(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, jboolean);
public:
  virtual void startElement(::java::lang::String *, ::java::lang::String *, ::java::lang::String *, ::org::xml::sax::Attributes *);
  virtual void endElement(::java::lang::String *, ::java::lang::String *, ::java::lang::String *);
  virtual void endPrefixMapping(::java::lang::String *);
  virtual void endDocument();
private:
  ::org::xml::sax::helpers::NamespaceSupport * __attribute__((aligned(__alignof__( ::gnu::xml::pipeline::EventFilter)))) nsStack;
  ::java::util::Stack * elementStack;
  jboolean pushedContext;
  JArray< ::java::lang::String * > * nsTemp;
  ::org::xml::sax::helpers::AttributesImpl * attributes;
  jboolean usedDefault;
  static ::java::lang::String * prefixRoot;
public:
  static ::java::lang::Class class$;
};

#endif // __gnu_xml_pipeline_NSFilter__
