2005/5/9

     
 

selftests_metainf_ext.cpp

artefaktur
// Generated by ACDK Metacompiler, 
// Copyrighted by Roger Rene Kommer, artefaktur
// 
// Dont edit this file manually
// 
#include <acdk.h>


#include "../selftests.h"
#include "../selftests.h"
#include "../TestInterface.h"
#include <acdkx/orb/CorObject.h>
#include <acdkx/orb/CorObject.h>
#include <acdkx/orb/CorObject.h>
#include "../TestInterfaceImpl.h"
#include <acdk/lang/dmi/ClazzInfoInternals.h>


struct acdk::lang::dmi::UnitInfo acdkx_orb_selftests_unitInfo = {
  ::acdk::lang::dmi::MiUnitInfo, // flags
  0, //attributeRes
  "selftests", // name of unit
  -1, // hashCode
  "acdkx/orb", // ns
  0, // _scopeParent
  0, // _nextScopeSibling
  0 // _firstChild first ClazzInfo of this unit
};

static ::acdk::lang::dmi::RegisterUnitInfo _register_acdkx_orb_selftests_unitInfo(&acdkx_orb_selftests_unitInfo);




//static
::acdk::lang::RObject
Hello_create_array(int length)
{
  return new ObjectArrayImpl<RHello>(length);
}

//static
::acdk::lang::RObject
Hello_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class Hello_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  Hello_method__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)Hello::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  Hello_method_foo_INIOUTI_LAnEnum__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    Hello* This = dmi_cast<Hello>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = (AnEnum)This->Hello::foo((AnEnum)args[0].getIntVar(), (AnEnum&)args[1].getIntRef());
    else
      ret = (AnEnum)This->foo((AnEnum)args[0].getIntVar(), (AnEnum&)args[1].getIntRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  Hello_method_hello__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    Hello* This = dmi_cast<Hello>(This_);
    This->hello();
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _Hello_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* Hello_methods__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* Hello_methods__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo Hello_method_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  Hello_methods__args, // the arguments
  0, //arguments count
  Hello_methods__exceptions, // the declared exceptions
  Hello_MetainfoWrapper::Hello_method__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo Hello_methods_foo_INIOUTI_LAnEnum__arg_i1 = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "i1", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo Hello_methods_foo_INIOUTI_LAnEnum__arg_i2 = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "i2", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* Hello_methods_foo_INIOUTI_LAnEnum__args[] = 
{
  &Hello_methods_foo_INIOUTI_LAnEnum__arg_i1,
  &Hello_methods_foo_INIOUTI_LAnEnum__arg_i2,
  0
};

::acdk::lang::dmi::ClazzInfo* Hello_methods_foo_INIOUTI_LAnEnum__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo Hello_method_foo_INIOUTI_LAnEnum_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "foo", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_1_foo", // alternative name of method
  -1, // altlabelHashCode
  Hello_methods_foo_INIOUTI_LAnEnum__args, // the arguments
  0, //arguments count
  Hello_methods_foo_INIOUTI_LAnEnum__exceptions, // the declared exceptions
  Hello_MetainfoWrapper::Hello_method_foo_INIOUTI_LAnEnum__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* Hello_methods_hello__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* Hello_methods_hello__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo Hello_method_hello__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "hello", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_0_hello", // alternative name of method
  -1, // altlabelHashCode
  Hello_methods_hello__V_args, // the arguments
  0, //arguments count
  Hello_methods_hello__V_exceptions, // the declared exceptions
  Hello_MetainfoWrapper::Hello_method_hello__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _Hello_methods[] = 
{
  &Hello_method_,
  &Hello_method_foo_INIOUTI_LAnEnum_,
  &Hello_method_hello__V,
  0
};


struct Hello_MetaInfoInitializer
{  Hello_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = Hello::clazzInfo();
    ci->fields =  _Hello_fields;
    ci->methods =  _Hello_methods;
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
Hello_MetaInfoInitializer Hello_MetaInfoInitializer_staticinstance__;


struct Hello_clazzInfo_ClazzAttributesResInitializer1
{
  Hello_clazzInfo_ClazzAttributesResInitializer1()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)&Hello_methods_foo_INIOUTI_LAnEnum__arg_i1, "__enumArgInfo", ::acdk::lang::dmi::ClazzAttributeResValue::makeFunctionPtrRes((void*)AnEnumMetaInf::GetEnumInfo()));
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)&Hello_methods_foo_INIOUTI_LAnEnum__arg_i2, "__enumArgInfo", ::acdk::lang::dmi::ClazzAttributeResValue::makeFunctionPtrRes((void*)AnEnumMetaInf::GetEnumInfo()));
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)&Hello_method_foo_INIOUTI_LAnEnum_, "__enumArgInfo", ::acdk::lang::dmi::ClazzAttributeResValue::makeFunctionPtrRes((void*)AnEnumMetaInf::GetEnumInfo()));
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)Hello::clazzInfo(), "acdkx_orb_ClassType", ::acdk::lang::dmi::ClazzAttributeResValue::makeStringRes("", false));
  }
};

Hello_clazzInfo_ClazzAttributesResInitializer1 Hello_clazzInfo_ClazzAttributesResInitializer1_instance;


char* _Hello_Skel__ids[] = {
  "IDL:Hello:1.0",
  0
};

class ACDKX_ORB_PUBLIC Hello_Skel
: extends ::acdkx::orb::CorObject,
  implements Hello
{
public:
  char** _ids() { return _Hello_Skel__ids; }
  Hello_Skel() : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject()) { }
  Hello_Skel(IN(::acdk::lang::RString) objKey) : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject(objKey)) { }
  static ::acdk::lang::RObject create_instance() { return new Hello_Skel(); }
  virtual void hello()
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< Hello*>(localObject())->hello();
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("hello", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual AnEnum foo(IN(AnEnum) i1, OUT(AnEnum) i2)
  {
    while (true) {
    if (is_local() == true) {
        AnEnum __retvalue = dynamic_cast< Hello*>(localObject())->foo(i1, i2);
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("foo", true);
        __output->write_long((int)i1);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        AnEnum __retvalue = (AnEnum)__input->read_long();
        i2 = (AnEnum) __input->read_long();
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual ::acdk::lang::RClass GetClass()
  {
    while (true) {
    if (is_local() == true) {
        ::acdk::lang::RClass __retvalue = dynamic_cast< Hello*>(localObject())->GetClass();
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("GetClass", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        ::acdk::lang::RClass __retvalue = (::acdk::lang::RClass)__input->read_acdk_object(::acdk::lang::Class::GetClass());
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
};

::acdkx::orb::SkelInfoClassesStruct __Hello_Skel_Info = { Hello::clazzInfo(), Hello_Skel::create_instance, 0 };
static::acdkx::orb::RegisterSkelInfoClass _register_Hello_Skel(&__Hello_Skel_Info);

//static
RHello Hello::GetSkel(IN(::acdk::lang::RString) objKey)
{
  return new Hello_Skel(objKey);
}
//virtual
::org::omg::CORBA::portable::ROutputStream
Hello:: _invoke(IN(RString) method, ::org::omg::CORBA::portable::InputStream& __input, ::org::omg::CORBA::portable::ResponseHandler& handler) THROWS1(::org::omg::CORBA::RSystemException)
{
#if defined(__BORLANDC__) // Borland 5.51 bug has to be solved
  ::acdk::lang::RThrowable ex;
#endif //defined(__BORLANDC__)
  if (method->equals("_is_a") == true) {
    try {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      ::acdk::lang::RString name = __input.read_string();
      for (int i = 0; _Hello_Skel__ids[i]; i++) {
        if (name->equals(_Hello_Skel__ids[i]) == true) {
          __output->write_boolean(true);
          return __output;
        }
      }
      __output->write_boolean(false);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  const ::acdk::lang::dmi::ClazzMethodInfo* methinf =  ::acdkx::orb::AORB::lookupMethod(method, clazzInfo());
  if (methinf == 0)
    THROW1(Exception, RString("Cannot find matching function for ") + method);
  if (&Hello_method_hello__V == methinf) {
    try {
      hello();
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&Hello_method_foo_INIOUTI_LAnEnum_ == methinf) {
    try {
      AnEnum i1 = (AnEnum)__input.read_long();
      AnEnum i2;
      AnEnum __retval = foo(i1, i2);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_long(__retval);
      __output->write_long((int)i2);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  THROW0_FQ(::org::omg::CORBA::, BAD_OPERATION);
  return Nil;
}






//static
::acdk::lang::RObject
tty_create_array(int length)
{
  return new ObjectArrayImpl<Rtty>(length);
}

//static
::acdk::lang::RObject
tty_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class tty_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  tty_method__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)tty::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  tty_method_print_INLRString__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    tty* This = dmi_cast<tty>(This_);
    This->print((RString)args[0].getObjectVar());
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _tty_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* tty_methods__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* tty_methods__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo tty_method_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_1_GetClass", // alternative name of method
  -1, // altlabelHashCode
  tty_methods__args, // the arguments
  0, //arguments count
  tty_methods__exceptions, // the declared exceptions
  tty_MetainfoWrapper::tty_method__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo tty_methods_print_INLRString__V_arg_msg = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "msg", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* tty_methods_print_INLRString__V_args[] = 
{
  &tty_methods_print_INLRString__V_arg_msg,
  0
};

::acdk::lang::dmi::ClazzInfo* tty_methods_print_INLRString__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo tty_method_print_INLRString__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_0_print", // alternative name of method
  -1, // altlabelHashCode
  tty_methods_print_INLRString__V_args, // the arguments
  0, //arguments count
  tty_methods_print_INLRString__V_exceptions, // the declared exceptions
  tty_MetainfoWrapper::tty_method_print_INLRString__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _tty_methods[] = 
{
  &tty_method_,
  &tty_method_print_INLRString__V,
  0
};


struct tty_MetaInfoInitializer
{  tty_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = tty::clazzInfo();
    ci->fields =  _tty_fields;
    ci->methods =  _tty_methods;
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
tty_MetaInfoInitializer tty_MetaInfoInitializer_staticinstance__;


struct tty_clazzInfo_ClazzAttributesResInitializer2
{
  tty_clazzInfo_ClazzAttributesResInitializer2()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)tty::clazzInfo(), "acdkx_orb_ClassType", ::acdk::lang::dmi::ClazzAttributeResValue::makeStringRes("", false));
  }
};

tty_clazzInfo_ClazzAttributesResInitializer2 tty_clazzInfo_ClazzAttributesResInitializer2_instance;


char* _tty_Skel__ids[] = {
  "IDL:tty:1.0",
  0
};

class ACDKX_ORB_PUBLIC tty_Skel
: extends ::acdkx::orb::CorObject,
  implements tty
{
public:
  char** _ids() { return _tty_Skel__ids; }
  tty_Skel() : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject()) { }
  tty_Skel(IN(::acdk::lang::RString) objKey) : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject(objKey)) { }
  static ::acdk::lang::RObject create_instance() { return new tty_Skel(); }
  virtual void print(IN(RString) msg)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< tty*>(localObject())->print(msg);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("print", true);
        __output->write_string(msg);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual ::acdk::lang::RClass GetClass()
  {
    while (true) {
    if (is_local() == true) {
        ::acdk::lang::RClass __retvalue = dynamic_cast< tty*>(localObject())->GetClass();
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("GetClass", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        ::acdk::lang::RClass __retvalue = (::acdk::lang::RClass)__input->read_acdk_object(::acdk::lang::Class::GetClass());
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
};

::acdkx::orb::SkelInfoClassesStruct __tty_Skel_Info = { tty::clazzInfo(), tty_Skel::create_instance, 0 };
static::acdkx::orb::RegisterSkelInfoClass _register_tty_Skel(&__tty_Skel_Info);

//static
Rtty tty::GetSkel(IN(::acdk::lang::RString) objKey)
{
  return new tty_Skel(objKey);
}
//virtual
::org::omg::CORBA::portable::ROutputStream
tty:: _invoke(IN(RString) method, ::org::omg::CORBA::portable::InputStream& __input, ::org::omg::CORBA::portable::ResponseHandler& handler) THROWS1(::org::omg::CORBA::RSystemException)
{
#if defined(__BORLANDC__) // Borland 5.51 bug has to be solved
  ::acdk::lang::RThrowable ex;
#endif //defined(__BORLANDC__)
  if (method->equals("_is_a") == true) {
    try {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      ::acdk::lang::RString name = __input.read_string();
      for (int i = 0; _tty_Skel__ids[i]; i++) {
        if (name->equals(_tty_Skel__ids[i]) == true) {
          __output->write_boolean(true);
          return __output;
        }
      }
      __output->write_boolean(false);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  const ::acdk::lang::dmi::ClazzMethodInfo* methinf =  ::acdkx::orb::AORB::lookupMethod(method, clazzInfo());
  if (methinf == 0)
    THROW1(Exception, RString("Cannot find matching function for ") + method);
  if (&tty_method_print_INLRString__V == methinf) {
    try {
      RString msg = (RString)__input.read_string();
      print(msg);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  THROW0_FQ(::org::omg::CORBA::, BAD_OPERATION);
  return Nil;
}




namespace acdkx { 
namespace orb { 
namespace selftests { 


//static
::acdk::lang::RObject
TestException_create_array(int length)
{
  return new ObjectArrayImpl<RTestException>(length);
}

//static
::acdk::lang::RObject
TestException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class TestException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)TestException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestException_method_TestException__LRTestException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new TestException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestException_method_TestException_INLRString__LRTestException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new TestException((RString)args[0].getObjectVar());
    return methinf;
  }
};


void ThrowException_TestException(IN(::acdk::lang::RThrowable) ex)
{
  throw RTestException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _TestException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  TestException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  TestException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  TestException_MetainfoWrapper::TestException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestException_methods_TestException__LRTestException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestException_methods_TestException__LRTestException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestException_method_TestException__LRTestException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "TestException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  TestException::clazzInfo(), // return type
  "_0_TestException", // alternative name of method
  -1, // altlabelHashCode
  TestException_methods_TestException__LRTestException__args, // the arguments
  0, //arguments count
  TestException_methods_TestException__LRTestException__exceptions, // the declared exceptions
  TestException_MetainfoWrapper::TestException_method_TestException__LRTestException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestException_methods_TestException_INLRString__LRTestException__arg_msg = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "msg", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestException_methods_TestException_INLRString__LRTestException__args[] = 
{
  &TestException_methods_TestException_INLRString__LRTestException__arg_msg,
  0
};

::acdk::lang::dmi::ClazzInfo* TestException_methods_TestException_INLRString__LRTestException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestException_method_TestException_INLRString__LRTestException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "TestException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  TestException::clazzInfo(), // return type
  "_1_TestException", // alternative name of method
  -1, // altlabelHashCode
  TestException_methods_TestException_INLRString__LRTestException__args, // the arguments
  0, //arguments count
  TestException_methods_TestException_INLRString__LRTestException__exceptions, // the declared exceptions
  TestException_MetainfoWrapper::TestException_method_TestException_INLRString__LRTestException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _TestException_methods[] = 
{
  &TestException_method_GetClass__L_acdk_lang_RClass_,
  &TestException_method_TestException__LRTestException_,
  &TestException_method_TestException_INLRString__LRTestException_,
  0
};


struct TestException_MetaInfoInitializer
{  TestException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = TestException::clazzInfo();
    ci->fields =  _TestException_fields;
    ci->methods =  _TestException_methods;
    ci->_scopeParent = acdkx_orb_selftests_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
TestException_MetaInfoInitializer TestException_MetaInfoInitializer_staticinstance__;


struct TestException_clazzInfo_ClazzAttributesResInitializer3
{
  TestException_clazzInfo_ClazzAttributesResInitializer3()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)TestException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_TestException));
  }
};

TestException_clazzInfo_ClazzAttributesResInitializer3 TestException_clazzInfo_ClazzAttributesResInitializer3_instance;



} // namespace acdkx
} // namespace orb
} // namespace selftests

namespace acdkx { 
namespace orb { 
namespace selftests { 


//static
::acdk::lang::RObject
TestInterface_create_array(int length)
{
  return new ObjectArrayImpl<RTestInterface>(length);
}

//static
::acdk::lang::RObject
TestInterface_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class TestInterface_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)TestInterface::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_activate__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->activate();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_deactivate_OUTZOUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->deactivate(args[0].getBoolRef(), args[1].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_discard_requests_OUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->discard_requests(args[0].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_doSomething__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->doSomething();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_getManager__Lacdk_lang_RObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    ret = (::acdk::lang::RObject)This->getManager();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_hold_requests_OUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->hold_requests(args[0].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_inoutvalue_INOUTI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->inoutvalue(args[0].getIntRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_invalue_INI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->invalue(args[0].getIntVar());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_outvalue_OUTI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->outvalue(args[0].getIntRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_retvalfoo__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
  ret = This->retvalfoo();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_stringTest_INLRString_OUTLRString__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    ret = (::acdk::lang::RObject)This->stringTest((RString)args[0].getObjectVar(),  ::acdk::lang::getTypedObjectRef< RString >(args[1]));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterface_method_throwException_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterface* This = dmi_cast<TestInterface>(This_);
    This->throwException(args[0].getIntVar());
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _TestInterface_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_c_GetClass", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods__args, // the arguments
  0, //arguments count
  TestInterface_methods__exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_activate__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_activate__V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterface_activate__V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_activate__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "activate", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_0_activate", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_activate__V_args, // the arguments
  0, //arguments count
  TestInterface_methods_activate__V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_activate__V_dispatch, // invoke this method
  TestInterface_activate__V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_deactivate_OUTZOUTZ_V_arg_etherealize_objects = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "etherealize_objects", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_deactivate_OUTZOUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_deactivate_OUTZOUTZ_V_args[] = 
{
  &TestInterface_methods_deactivate_OUTZOUTZ_V_arg_etherealize_objects,
  &TestInterface_methods_deactivate_OUTZOUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_deactivate_OUTZOUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterface_deactivate_OUTZOUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_deactivate_OUTZOUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "deactivate", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_deactivate", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_deactivate_OUTZOUTZ_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_deactivate_OUTZOUTZ_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_deactivate_OUTZOUTZ_V_dispatch, // invoke this method
  TestInterface_deactivate_OUTZOUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_discard_requests_OUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_discard_requests_OUTZ_V_args[] = 
{
  &TestInterface_methods_discard_requests_OUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_discard_requests_OUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterface_discard_requests_OUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_discard_requests_OUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "discard_requests", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_discard_requests", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_discard_requests_OUTZ_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_discard_requests_OUTZ_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_discard_requests_OUTZ_V_dispatch, // invoke this method
  TestInterface_discard_requests_OUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_doSomething__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_doSomething__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_doSomething__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOneway | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "doSomething", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_a_doSomething", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_doSomething__V_args, // the arguments
  0, //arguments count
  TestInterface_methods_doSomething__V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_doSomething__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_getManager__Lacdk_lang_RObject__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_getManager__Lacdk_lang_RObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_getManager__Lacdk_lang_RObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getManager", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::RObject::clazzInfo(), // return type
  "_9_getManager", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_getManager__Lacdk_lang_RObject__args, // the arguments
  0, //arguments count
  TestInterface_methods_getManager__Lacdk_lang_RObject__exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_getManager__Lacdk_lang_RObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_hold_requests_OUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_hold_requests_OUTZ_V_args[] = 
{
  &TestInterface_methods_hold_requests_OUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_hold_requests_OUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterface_hold_requests_OUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_hold_requests_OUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "hold_requests", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_1_hold_requests", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_hold_requests_OUTZ_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_hold_requests_OUTZ_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_hold_requests_OUTZ_V_dispatch, // invoke this method
  TestInterface_hold_requests_OUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_inoutvalue_INOUTI_V_arg_inoutval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "inoutval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_inoutvalue_INOUTI_V_args[] = 
{
  &TestInterface_methods_inoutvalue_INOUTI_V_arg_inoutval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_inoutvalue_INOUTI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_inoutvalue_INOUTI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "inoutvalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_inoutvalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_inoutvalue_INOUTI_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_inoutvalue_INOUTI_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_inoutvalue_INOUTI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_invalue_INI_V_arg_inval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "inval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_invalue_INI_V_args[] = 
{
  &TestInterface_methods_invalue_INI_V_arg_inval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_invalue_INI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_invalue_INI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "invalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_6_invalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_invalue_INI_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_invalue_INI_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_invalue_INI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_outvalue_OUTI_V_arg_outval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "outval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_outvalue_OUTI_V_args[] = 
{
  &TestInterface_methods_outvalue_OUTI_V_arg_outval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_outvalue_OUTI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_outvalue_OUTI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "outvalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_5_outvalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_outvalue_OUTI_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_outvalue_OUTI_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_outvalue_OUTI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_retvalfoo__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_retvalfoo__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_retvalfoo__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "retvalfoo", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_4_retvalfoo", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_retvalfoo__I_args, // the arguments
  0, //arguments count
  TestInterface_methods_retvalfoo__I_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_retvalfoo__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__arg_istr = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "istr", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__arg_ostr = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "ostr", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__args[] = 
{
  &TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__arg_istr,
  &TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__arg_ostr,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_stringTest_INLRString_OUTLRString__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "stringTest", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_8_stringTest", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__args, // the arguments
  0, //arguments count
  TestInterface_methods_stringTest_INLRString_OUTLRString__LRString__exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_stringTest_INLRString_OUTLRString__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterface_methods_throwException_I_V_arg_extype = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "extype", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterface_methods_throwException_I_V_args[] = 
{
  &TestInterface_methods_throwException_I_V_arg_extype,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterface_methods_throwException_I_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  RNumberFormatException::clazzInfo(), 
  0
};

void TestInterface_throwException_I_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
 if (instanceof(ex, NumberFormatException) == true)
    THROW_INSTANCE( RNumberFormatException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterface_method_throwException_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "throwException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_b_throwException", // alternative name of method
  -1, // altlabelHashCode
  TestInterface_methods_throwException_I_V_args, // the arguments
  0, //arguments count
  TestInterface_methods_throwException_I_V_exceptions, // the declared exceptions
  TestInterface_MetainfoWrapper::TestInterface_method_throwException_I_V_dispatch, // invoke this method
  TestInterface_throwException_I_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _TestInterface_methods[] = 
{
  &TestInterface_method_,
  &TestInterface_method_activate__V,
  &TestInterface_method_deactivate_OUTZOUTZ_V,
  &TestInterface_method_discard_requests_OUTZ_V,
  &TestInterface_method_doSomething__V,
  &TestInterface_method_getManager__Lacdk_lang_RObject_,
  &TestInterface_method_hold_requests_OUTZ_V,
  &TestInterface_method_inoutvalue_INOUTI_V,
  &TestInterface_method_invalue_INI_V,
  &TestInterface_method_outvalue_OUTI_V,
  &TestInterface_method_retvalfoo__I,
  &TestInterface_method_stringTest_INLRString_OUTLRString__LRString_,
  &TestInterface_method_throwException_I_V,
  0
};


struct TestInterface_MetaInfoInitializer
{  TestInterface_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = TestInterface::clazzInfo();
    ci->fields =  _TestInterface_fields;
    ci->methods =  _TestInterface_methods;
    ci->_scopeParent = acdkx_orb_selftests_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
TestInterface_MetaInfoInitializer TestInterface_MetaInfoInitializer_staticinstance__;


struct TestInterface_clazzInfo_ClazzAttributesResInitializer4
{
  TestInterface_clazzInfo_ClazzAttributesResInitializer4()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)TestInterface::clazzInfo(), "acdkx_orb_ClassType", ::acdk::lang::dmi::ClazzAttributeResValue::makeStringRes("", false));
  }
};

TestInterface_clazzInfo_ClazzAttributesResInitializer4 TestInterface_clazzInfo_ClazzAttributesResInitializer4_instance;


char* _TestInterface_Skel__ids[] = {
  "IDL:acdkx/orb/selftests/TestInterface:1.0",
  0
};

class ACDKX_ORB_PUBLIC TestInterface_Skel
: extends ::acdkx::orb::CorObject,
  implements TestInterface
{
public:
  char** _ids() { return _TestInterface_Skel__ids; }
  TestInterface_Skel() : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject()) { }
  TestInterface_Skel(IN(::acdk::lang::RString) objKey) : ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject(objKey)) { }
  static ::acdk::lang::RObject create_instance() { return new TestInterface_Skel(); }
  virtual void activate() THROWS1(RTestException)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->activate();
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("activate", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
         if (_exClass == TestException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(TestException::GetClass());
           _releaseReply(__input);
           throw (RTestException)obj;
         }
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void hold_requests(OUT(bool) wait_for_completion) THROWS1(RTestException)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->hold_requests(wait_for_completion);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("hold_requests", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        wait_for_completion = (bool) __input->read_boolean();
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
         if (_exClass == TestException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(TestException::GetClass());
           _releaseReply(__input);
           throw (RTestException)obj;
         }
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void discard_requests(OUT(bool) wait_for_completion) THROWS1(RTestException)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->discard_requests(wait_for_completion);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("discard_requests", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        wait_for_completion = (bool) __input->read_boolean();
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
         if (_exClass == TestException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(TestException::GetClass());
           _releaseReply(__input);
           throw (RTestException)obj;
         }
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void deactivate(OUT(bool) etherealize_objects, OUT(bool) wait_for_completion) THROWS1(RTestException)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->deactivate(etherealize_objects, wait_for_completion);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("deactivate", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        etherealize_objects = (bool) __input->read_boolean();
        wait_for_completion = (bool) __input->read_boolean();
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
         if (_exClass == TestException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(TestException::GetClass());
           _releaseReply(__input);
           throw (RTestException)obj;
         }
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual int retvalfoo()
  {
    while (true) {
    if (is_local() == true) {
        int __retvalue = dynamic_cast< TestInterface*>(localObject())->retvalfoo();
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("retvalfoo", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        int __retvalue = (int)__input->read_long();
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void outvalue(OUT(int) outval)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->outvalue(outval);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("outvalue", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        outval = (int) __input->read_long();
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void invalue(IN(int) inval)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->invalue(inval);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("invalue", true);
        __output->write_long(inval);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void inoutvalue(INOUT(int) inoutval)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->inoutvalue(inoutval);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("inoutvalue", true);
        __output->write_long(inoutval);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        inoutval = (int) __input->read_long();
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual RString stringTest(IN(RString) istr, OUT(RString) ostr)
  {
    while (true) {
    if (is_local() == true) {
        RString __retvalue = dynamic_cast< TestInterface*>(localObject())->stringTest(istr, ostr);
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("stringTest", true);
        __output->write_string(istr);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        RString __retvalue = (RString)__input->read_string();
        ostr = (RString) __input->read_string();
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual acdk::lang::RObject getManager()
  {
    while (true) {
    if (is_local() == true) {
        acdk::lang::RObject __retvalue = dynamic_cast< TestInterface*>(localObject())->getManager();
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("getManager", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        acdk::lang::RObject __retvalue = (acdk::lang::RObject)__input->read_acdk_object(acdk::lang::Object::GetClass());
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void doSomething()
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->doSomething();
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("doSomething", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual void throwException(int extype) THROWS2(RTestException, RNumberFormatException)
  {
    while (true) {
    if (is_local() == true) {
        dynamic_cast< TestInterface*>(localObject())->throwException(extype);
        return;
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("throwException", true);
        __output->write_long(extype);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        return;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
         if (_exClass == TestException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(TestException::GetClass());
           _releaseReply(__input);
           throw (RTestException)obj;
         }
         if (_exClass == NumberFormatException::GetClass()) {
           ::acdk::lang::RObject obj = (::acdk::lang::RObject)__input->read_acdk_object(NumberFormatException::GetClass());
           _releaseReply(__input);
           throw (RNumberFormatException)obj;
         }
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
  virtual ::acdk::lang::RClass GetClass()
  {
    while (true) {
    if (is_local() == true) {
        ::acdk::lang::RClass __retvalue = dynamic_cast< TestInterface*>(localObject())->GetClass();
     } else { // not local
      ::org::omg::CORBA::portable::ROutputStream __output = Nil;
      ::org::omg::CORBA::portable::RInputStream __input = Nil;
      try {
        __output = _request("GetClass", true);
        __input = ACDK_FQ_SUPER_QUALIFIER(::acdkx::orb::, CorObject)::_invoke(__output);
        ::acdk::lang::RClass __retvalue = (::acdk::lang::RClass)__input->read_acdk_object(::acdk::lang::Class::GetClass());
        return __retvalue;
      } catch (::org::omg::CORBA::portable::RRemarshalException ) {
        ; //nothing continue;
      } catch (::org::omg::CORBA::portable::RApplicationException _exception ) {
         ::acdk::lang::RClass _exClass = _exception->getUserExceptionClass();
         __input = _exception->getInputStream();
           THROW1_FQ(::org::omg::CORBA::, UNKNOWN, RString("Unexpected User Exception: ") + _exClass->getName());
      } 
    } // not local
    } // while (true);
  }
};

::acdkx::orb::SkelInfoClassesStruct __TestInterface_Skel_Info = { TestInterface::clazzInfo(), TestInterface_Skel::create_instance, 0 };
static::acdkx::orb::RegisterSkelInfoClass _register_TestInterface_Skel(&__TestInterface_Skel_Info);

//static
RTestInterface TestInterface::GetSkel(IN(::acdk::lang::RString) objKey)
{
  return new TestInterface_Skel(objKey);
}
//virtual
::org::omg::CORBA::portable::ROutputStream
TestInterface:: _invoke(IN(RString) method, ::org::omg::CORBA::portable::InputStream& __input, ::org::omg::CORBA::portable::ResponseHandler& handler) THROWS1(::org::omg::CORBA::RSystemException)
{
#if defined(__BORLANDC__) // Borland 5.51 bug has to be solved
  ::acdk::lang::RThrowable ex;
#endif //defined(__BORLANDC__)
  if (method->equals("_is_a") == true) {
    try {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      ::acdk::lang::RString name = __input.read_string();
      for (int i = 0; _TestInterface_Skel__ids[i]; i++) {
        if (name->equals(_TestInterface_Skel__ids[i]) == true) {
          __output->write_boolean(true);
          return __output;
        }
      }
      __output->write_boolean(false);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  const ::acdk::lang::dmi::ClazzMethodInfo* methinf =  ::acdkx::orb::AORB::lookupMethod(method, clazzInfo());
  if (methinf == 0)
    THROW1(Exception, RString("Cannot find matching function for ") + method);
  if (&TestInterface_method_activate__V == methinf) {
    try {
      activate();
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_hold_requests_OUTZ_V == methinf) {
    try {
      bool wait_for_completion;
      hold_requests(wait_for_completion);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_boolean(wait_for_completion);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_discard_requests_OUTZ_V == methinf) {
    try {
      bool wait_for_completion;
      discard_requests(wait_for_completion);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_boolean(wait_for_completion);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_deactivate_OUTZOUTZ_V == methinf) {
    try {
      bool etherealize_objects;
      bool wait_for_completion;
      deactivate(etherealize_objects, wait_for_completion);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_boolean(etherealize_objects);
      __output->write_boolean(wait_for_completion);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_retvalfoo__I == methinf) {
    try {
      int __retval = retvalfoo();
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_long(__retval);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_outvalue_OUTI_V == methinf) {
    try {
      int outval;
      outvalue(outval);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_long(outval);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_invalue_INI_V == methinf) {
    try {
      int inval = (int)__input.read_long();
      invalue(inval);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_inoutvalue_INOUTI_V == methinf) {
    try {
      int inoutval = (int)__input.read_long();
      inoutvalue(inoutval);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_long(inoutval);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_stringTest_INLRString_OUTLRString__LRString_ == methinf) {
    try {
      RString istr = (RString)__input.read_string();
      RString ostr;
      RString __retval = stringTest(istr, ostr);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_string(__retval);
      __output->write_string(ostr);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_getManager__Lacdk_lang_RObject_ == methinf) {
    try {
      acdk::lang::RObject __retval = getManager();
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      __output->write_acdk_object((::acdk::lang::RObject)__retval);
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_doSomething__V == methinf) {
    try {
      doSomething();
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  if (&TestInterface_method_throwException_I_V == methinf) {
    try {
      int extype = (int)__input.read_long();
      throwException(extype);
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createReply();
      return __output;
    } catch (::acdk::lang::RThrowable ex) {
      ::org::omg::CORBA::portable::ROutputStream __output = handler.createExceptionReply();
      __output->write_exception(ex);
      return __output;
    } catch (...) {
      throw;
    }
  }
  THROW0_FQ(::org::omg::CORBA::, BAD_OPERATION);
  return Nil;
}


} // namespace acdkx
} // namespace orb
} // namespace selftests

namespace acdkx { 
namespace orb { 
namespace selftests { 


//static
::acdk::lang::RObject
TestInterfaceImpl_create_array(int length)
{
  return new ObjectArrayImpl<RTestInterfaceImpl>(length);
}

//static
::acdk::lang::RObject
TestInterfaceImpl_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class TestInterfaceImpl_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)TestInterfaceImpl::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_TestInterfaceImpl__LRTestInterfaceImpl__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new TestInterfaceImpl();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_activate__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::activate();
    else
        This->activate();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_deactivate_OUTZOUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::deactivate(args[0].getBoolRef(), args[1].getBoolRef());
    else
        This->deactivate(args[0].getBoolRef(), args[1].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_discard_requests_OUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::discard_requests(args[0].getBoolRef());
    else
        This->discard_requests(args[0].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_doSomething__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::doSomething();
    else
        This->doSomething();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_getManager__LRObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->TestInterfaceImpl::getManager();
    else
        ret = (::acdk::lang::RObject)This->getManager();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_hold_requests_OUTZ_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::hold_requests(args[0].getBoolRef());
    else
        This->hold_requests(args[0].getBoolRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_inoutvalue_INOUTI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::inoutvalue(args[0].getIntRef());
    else
        This->inoutvalue(args[0].getIntRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_invalue_INI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::invalue(args[0].getIntVar());
    else
        This->invalue(args[0].getIntVar());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_outvalue_OUTI_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::outvalue(args[0].getIntRef());
    else
        This->outvalue(args[0].getIntRef());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_retvalfoo__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->TestInterfaceImpl::retvalfoo();
    else
      ret = This->retvalfoo();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_stringTest_INLRString_OUTLRString__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->TestInterfaceImpl::stringTest((RString)args[0].getObjectVar(),  ::acdk::lang::getTypedObjectRef< RString >(args[1]));
    else
        ret = (::acdk::lang::RObject)This->stringTest((RString)args[0].getObjectVar(),  ::acdk::lang::getTypedObjectRef< RString >(args[1]));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  TestInterfaceImpl_method_throwException_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->TestInterfaceImpl::throwException(args[0].getIntVar());
    else
        This->throwException(args[0].getIntVar());
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  TestInterfaceImpl_fields_iValue_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    TestInterfaceImpl* This = dmi_cast<TestInterfaceImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->iValue, flags);
    else
      This->iValue = var.getIntVar();
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo TestInterfaceImpl_fields_iValue = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "iValue", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_fields_iValue_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _TestInterfaceImpl_fields[] = 
{
  &TestInterfaceImpl_fields_iValue,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_d_GetClass", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_TestInterfaceImpl__LRTestInterfaceImpl__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_TestInterfaceImpl__LRTestInterfaceImpl__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_TestInterfaceImpl__LRTestInterfaceImpl_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "TestInterfaceImpl", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  TestInterfaceImpl::clazzInfo(), // return type
  "_0_TestInterfaceImpl", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_TestInterfaceImpl__LRTestInterfaceImpl__args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_TestInterfaceImpl__LRTestInterfaceImpl__exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_TestInterfaceImpl__LRTestInterfaceImpl__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_activate__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_activate__V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterfaceImpl_activate__V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_activate__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "activate", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_1_activate", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_activate__V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_activate__V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_activate__V_dispatch, // invoke this method
  TestInterfaceImpl_activate__V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_arg_etherealize_objects = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "etherealize_objects", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_args[] = 
{
  &TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_arg_etherealize_objects,
  &TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterfaceImpl_deactivate_OUTZOUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_deactivate_OUTZOUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "deactivate", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_4_deactivate", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_deactivate_OUTZOUTZ_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_deactivate_OUTZOUTZ_V_dispatch, // invoke this method
  TestInterfaceImpl_deactivate_OUTZOUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_discard_requests_OUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_discard_requests_OUTZ_V_args[] = 
{
  &TestInterfaceImpl_methods_discard_requests_OUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_discard_requests_OUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterfaceImpl_discard_requests_OUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_discard_requests_OUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "discard_requests", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_discard_requests", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_discard_requests_OUTZ_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_discard_requests_OUTZ_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_discard_requests_OUTZ_V_dispatch, // invoke this method
  TestInterfaceImpl_discard_requests_OUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_doSomething__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_doSomething__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_doSomething__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOneway | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "doSomething", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_b_doSomething", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_doSomething__V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_doSomething__V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_doSomething__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_getManager__LRObject__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_getManager__LRObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_getManager__LRObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getManager", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo(), // return type
  "_a_getManager", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_getManager__LRObject__args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_getManager__LRObject__exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_getManager__LRObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_hold_requests_OUTZ_V_arg_wait_for_completion = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "wait_for_completion", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_hold_requests_OUTZ_V_args[] = 
{
  &TestInterfaceImpl_methods_hold_requests_OUTZ_V_arg_wait_for_completion,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_hold_requests_OUTZ_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  0
};

void TestInterfaceImpl_hold_requests_OUTZ_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_hold_requests_OUTZ_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "hold_requests", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_hold_requests", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_hold_requests_OUTZ_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_hold_requests_OUTZ_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_hold_requests_OUTZ_V_dispatch, // invoke this method
  TestInterfaceImpl_hold_requests_OUTZ_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_inoutvalue_INOUTI_V_arg_inoutval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "inoutval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_inoutvalue_INOUTI_V_args[] = 
{
  &TestInterfaceImpl_methods_inoutvalue_INOUTI_V_arg_inoutval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_inoutvalue_INOUTI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_inoutvalue_INOUTI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "inoutvalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_8_inoutvalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_inoutvalue_INOUTI_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_inoutvalue_INOUTI_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_inoutvalue_INOUTI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_invalue_INI_V_arg_inval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "inval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_invalue_INI_V_args[] = 
{
  &TestInterfaceImpl_methods_invalue_INI_V_arg_inval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_invalue_INI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_invalue_INI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "invalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_invalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_invalue_INI_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_invalue_INI_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_invalue_INI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_outvalue_OUTI_V_arg_inval = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "inval", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_outvalue_OUTI_V_args[] = 
{
  &TestInterfaceImpl_methods_outvalue_OUTI_V_arg_inval,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_outvalue_OUTI_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_outvalue_OUTI_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "outvalue", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_6_outvalue", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_outvalue_OUTI_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_outvalue_OUTI_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_outvalue_OUTI_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_retvalfoo__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_retvalfoo__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_retvalfoo__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "retvalfoo", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_5_retvalfoo", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_retvalfoo__I_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_retvalfoo__I_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_retvalfoo__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__arg_istr = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "istr", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__arg_ostr = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiOut, 
  0, //AttributesRes
  "ostr", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__args[] = 
{
  &TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__arg_istr,
  &TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__arg_ostr,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_stringTest_INLRString_OUTLRString__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "stringTest", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_9_stringTest", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_stringTest_INLRString_OUTLRString__LRString__exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_stringTest_INLRString_OUTLRString__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo TestInterfaceImpl_methods_throwException_I_V_arg_extype = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "extype", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* TestInterfaceImpl_methods_throwException_I_V_args[] = 
{
  &TestInterfaceImpl_methods_throwException_I_V_arg_extype,
  0
};

::acdk::lang::dmi::ClazzInfo* TestInterfaceImpl_methods_throwException_I_V_exceptions[] =
{
  RTestException::clazzInfo(), 
  RNumberFormatException::clazzInfo(), 
  0
};

void TestInterfaceImpl_throwException_I_V_throwDispatch(IN(::acdk::lang::RThrowable) ex)
{
 if (instanceof(ex, TestException) == true)
    THROW_INSTANCE( RTestException(ex));
 if (instanceof(ex, NumberFormatException) == true)
    THROW_INSTANCE( RNumberFormatException(ex));
}

::acdk::lang::dmi::ClazzMethodInfo TestInterfaceImpl_method_throwException_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "throwException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_c_throwException", // alternative name of method
  -1, // altlabelHashCode
  TestInterfaceImpl_methods_throwException_I_V_args, // the arguments
  0, //arguments count
  TestInterfaceImpl_methods_throwException_I_V_exceptions, // the declared exceptions
  TestInterfaceImpl_MetainfoWrapper::TestInterfaceImpl_method_throwException_I_V_dispatch, // invoke this method
  TestInterfaceImpl_throwException_I_V_throwDispatch, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _TestInterfaceImpl_methods[] = 
{
  &TestInterfaceImpl_method_GetClass__L_acdk_lang_RClass_,
  &TestInterfaceImpl_method_TestInterfaceImpl__LRTestInterfaceImpl_,
  &TestInterfaceImpl_method_activate__V,
  &TestInterfaceImpl_method_deactivate_OUTZOUTZ_V,
  &TestInterfaceImpl_method_discard_requests_OUTZ_V,
  &TestInterfaceImpl_method_doSomething__V,
  &TestInterfaceImpl_method_getManager__LRObject_,
  &TestInterfaceImpl_method_hold_requests_OUTZ_V,
  &TestInterfaceImpl_method_inoutvalue_INOUTI_V,
  &TestInterfaceImpl_method_invalue_INI_V,
  &TestInterfaceImpl_method_outvalue_OUTI_V,
  &TestInterfaceImpl_method_retvalfoo__I,
  &TestInterfaceImpl_method_stringTest_INLRString_OUTLRString__LRString_,
  &TestInterfaceImpl_method_throwException_I_V,
  0
};


struct TestInterfaceImpl_MetaInfoInitializer
{  TestInterfaceImpl_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = TestInterfaceImpl::clazzInfo();
    ci->fields =  _TestInterfaceImpl_fields;
    ci->methods =  _TestInterfaceImpl_methods;
    ci->_scopeParent = acdkx_orb_selftests_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
TestInterfaceImpl_MetaInfoInitializer TestInterfaceImpl_MetaInfoInitializer_staticinstance__;


} // namespace acdkx
} // namespace orb
} // namespace selftests

#if defined(ACDK_OS_WIN32)
// force to create an import lib on windows platforms
void __declspec(dllexport) selftests_dummyExportFunc() {}
#endif
/FONT>