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

#ifndef __org_w3c_dom_UserDataHandler__
#define __org_w3c_dom_UserDataHandler__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace org
  {
    namespace w3c
    {
      namespace dom
      {
          class Node;
          class UserDataHandler;
      }
    }
  }
}

class org::w3c::dom::UserDataHandler : public ::java::lang::Object
{

public:
  virtual void handle(jshort, ::java::lang::String *, ::java::lang::Object *, ::org::w3c::dom::Node *, ::org::w3c::dom::Node *) = 0;
  static const jshort NODE_CLONED = 1;
  static const jshort NODE_IMPORTED = 2;
  static const jshort NODE_DELETED = 3;
  static const jshort NODE_RENAMED = 4;
  static const jshort NODE_ADOPTED = 5;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __org_w3c_dom_UserDataHandler__
