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

#ifndef __gnu_javax_naming_giop_GiopNamingServiceURLContext__
#define __gnu_javax_naming_giop_GiopNamingServiceURLContext__

#pragma interface

#include <gnu/javax/naming/giop/CorbalocParser.h>
#include <gcj/array.h>

extern "Java"
{
  namespace gnu
  {
    namespace CORBA
    {
      namespace NamingService
      {
          class NameTransformer;
      }
    }
    namespace javax
    {
      namespace naming
      {
        namespace giop
        {
            class GiopNamingServiceFactory;
            class GiopNamingServiceURLContext;
        }
      }
    }
  }
  namespace javax
  {
    namespace naming
    {
        class Context;
        class Name;
        class NameParser;
        class NamingEnumeration;
    }
  }
  namespace org
  {
    namespace omg
    {
      namespace CORBA
      {
          class ORB;
      }
      namespace CosNaming
      {
          class NameComponent;
          class NamingContextExt;
      }
    }
  }
}

class gnu::javax::naming::giop::GiopNamingServiceURLContext : public ::gnu::javax::naming::giop::CorbalocParser
{

public:
  GiopNamingServiceURLContext(::java::util::Hashtable *, ::gnu::javax::naming::giop::GiopNamingServiceFactory *, ::org::omg::CORBA::ORB *);
  virtual ::org::omg::CosNaming::NamingContextExt * getService(::java::lang::String *);
  virtual JArray< ::java::lang::String * > * split(::java::lang::String *);
  virtual void bind(::javax::naming::Name *, ::java::lang::Object *);
  virtual void bind(::java::lang::String *, ::java::lang::Object *);
  virtual void close();
  virtual ::javax::naming::Name * composeName(::javax::naming::Name *, ::javax::naming::Name *);
  virtual ::java::lang::String * composeName(::java::lang::String *, ::java::lang::String *);
  virtual ::javax::naming::Context * createSubcontext(::javax::naming::Name *);
  virtual ::javax::naming::Context * createSubcontext(::java::lang::String *);
  virtual void destroySubcontext(::javax::naming::Name *);
  virtual void destroySubcontext(::java::lang::String *);
  virtual ::java::lang::String * getNameInNamespace();
  virtual ::javax::naming::NameParser * getNameParser(::javax::naming::Name *);
  virtual ::javax::naming::NameParser * getNameParser(::java::lang::String *);
  virtual ::javax::naming::NamingEnumeration * list(::javax::naming::Name *);
  virtual ::javax::naming::NamingEnumeration * list(::java::lang::String *);
  virtual ::javax::naming::NamingEnumeration * listBindings(::javax::naming::Name *);
  virtual ::javax::naming::NamingEnumeration * listBindings(::java::lang::String *);
  virtual ::java::lang::Object * lookup(::javax::naming::Name *);
  virtual ::java::lang::Object * lookup(::java::lang::String *);
  virtual ::java::lang::Object * lookupLink(::javax::naming::Name *);
  virtual ::java::lang::Object * lookupLink(::java::lang::String *);
  virtual void rebind(::javax::naming::Name *, ::java::lang::Object *);
  virtual void rebind(::java::lang::String *, ::java::lang::Object *);
  virtual void rename(::javax::naming::Name *, ::javax::naming::Name *);
  virtual void rename(::java::lang::String *, ::java::lang::String *);
  virtual void unbind(::javax::naming::Name *);
  virtual void unbind(::java::lang::String *);
  virtual ::java::lang::Object * addToEnvironment(::java::lang::String *, ::java::lang::Object *);
  virtual ::java::util::Hashtable * getEnvironment();
  virtual ::java::lang::Object * removeFromEnvironment(::java::lang::String *);
  virtual JArray< ::org::omg::CosNaming::NameComponent * > * toGiop(::javax::naming::Name *);
  virtual jint getBatchSize();
  jint __attribute__((aligned(__alignof__( ::gnu::javax::naming::giop::CorbalocParser)))) DEFAULT_BATCH_SIZE;
public: // actually package-private
  ::org::omg::CORBA::ORB * orb;
  ::java::util::Hashtable * properties;
  ::gnu::javax::naming::giop::GiopNamingServiceFactory * factory;
  static ::gnu::CORBA::NamingService::NameTransformer * transformer;
public:
  jint howMany;
  static ::java::lang::Class class$;
};

#endif // __gnu_javax_naming_giop_GiopNamingServiceURLContext__
