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

#ifndef __javax_rmi_CORBA_UtilDelegate__
#define __javax_rmi_CORBA_UtilDelegate__

#pragma interface

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

extern "Java"
{
  namespace java
  {
    namespace rmi
    {
        class Remote;
        class RemoteException;
    }
  }
  namespace javax
  {
    namespace rmi
    {
      namespace CORBA
      {
          class Stub;
          class Tie;
          class UtilDelegate;
          class ValueHandler;
      }
    }
  }
  namespace org
  {
    namespace omg
    {
      namespace CORBA
      {
          class ORB;
          class SystemException;
        namespace portable
        {
            class InputStream;
            class OutputStream;
        }
      }
    }
  }
}

class javax::rmi::CORBA::UtilDelegate : public ::java::lang::Object
{

public:
  virtual ::java::lang::Object * copyObject(::java::lang::Object *, ::org::omg::CORBA::ORB *) = 0;
  virtual JArray< ::java::lang::Object * > * copyObjects(JArray< ::java::lang::Object * > *, ::org::omg::CORBA::ORB *) = 0;
  virtual ::javax::rmi::CORBA::ValueHandler * createValueHandler() = 0;
  virtual ::java::lang::String * getCodebase(::java::lang::Class *) = 0;
  virtual jboolean isLocal(::javax::rmi::CORBA::Stub *) = 0;
  virtual ::java::lang::Class * loadClass(::java::lang::String *, ::java::lang::String *, ::java::lang::ClassLoader *) = 0;
  virtual ::java::rmi::RemoteException * mapSystemException(::org::omg::CORBA::SystemException *) = 0;
  virtual ::javax::rmi::CORBA::Tie * getTie(::java::rmi::Remote *) = 0;
  virtual void registerTarget(::javax::rmi::CORBA::Tie *, ::java::rmi::Remote *) = 0;
  virtual void unexportObject(::java::rmi::Remote *) = 0;
  virtual ::java::rmi::RemoteException * wrapException(::java::lang::Throwable *) = 0;
  virtual void writeRemoteObject(::org::omg::CORBA::portable::OutputStream *, ::java::lang::Object *) = 0;
  virtual void writeAbstractObject(::org::omg::CORBA::portable::OutputStream *, ::java::lang::Object *) = 0;
  virtual void writeAny(::org::omg::CORBA::portable::OutputStream *, ::java::lang::Object *) = 0;
  virtual ::java::lang::Object * readAny(::org::omg::CORBA::portable::InputStream *) = 0;
  static ::java::lang::Class class$;
} __attribute__ ((java_interface));

#endif // __javax_rmi_CORBA_UtilDelegate__
