home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / somdcprx.xh < prev    next >
Encoding:
Text File  |  1996-02-22  |  22.9 KB  |  747 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: h:\somnt\include\SOMDCPRX.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: Development
  7.  *     SOM Emitter emitxh.dll: Development
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *    COMPONENT_NAME: somd
  13.  * 
  14.  *    ORIGINS: 27
  15.  * 
  16.  * 
  17.  *    10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
  18.  *    All Rights Reserved
  19.  *    Licensed Materials - Property of IBM
  20.  *    US Government Users Restricted Rights - Use, duplication or
  21.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  22.  * 
  23.  * 
  24.  *    This is the class that implements DSOM proxy objects in clients.
  25.  * 
  26.  *    This class is a subclass of SOMDObject.  It inherits the basic behavior
  27.  *    (methods) of a CORBA object reference from that parent class.
  28.  *    Thus, it "is a" SOMDObject.
  29.  * 
  30.  *    This class overrides the usual somDispatch methods with versions
  31.  *    that build a DSOM Request for the invocation and dispatch it, remotely.
  32.  *    It is intended that the implementation of this "generic" proxy class
  33.  *    will be used to derive specific proxy classes via multiple inheritance.
  34.  *    The new dispatch method is inherited from this client proxy class, while
  35.  *    the desired interface--and language bindings--are inherited from the
  36.  *    target class (but no implementation).
  37.  * 
  38.  *    E.g.,
  39.  *           SOMDClientProxy      Animal
  40.  *                     \           /
  41.  *                      \         / (interface only)
  42.  *                       \       /
  43.  *                    Animal__Proxy
  44.  * 
  45.  *    Note that SOMDClientProxy is an instance of SOMDMetaProxy.
  46.  */
  47.  
  48.  
  49. #ifndef SOM_SOMDClientProxy_xh
  50. #define SOM_SOMDClientProxy_xh
  51.  
  52. class SOMDClientProxy;
  53.  
  54. #define SOMDClientProxy_MajorVersion 2
  55. #define SOMDClientProxy_MinorVersion 1
  56.  
  57. /* C++ SOM defs */
  58. #include <somcls.xh>
  59. #include <somcm.xh>
  60.  
  61. /* C++ parent defs */
  62. #ifndef SOM_SOMDObject_xh
  63. #include <somdobj.xh>
  64. #endif
  65.  
  66. #ifndef SOMDClientProxy_API
  67. #define SOMDClientProxy_API
  68. /*
  69.  * -- The Class API
  70.  */
  71.  
  72. /*
  73.  * Start of user-defined types:
  74.  */
  75. class SOMClass;
  76. class SOMObject;
  77. class Container;
  78. class ImplementationDef;
  79. class InterfaceDef;
  80. class NVList;
  81. class Context;
  82. class Request;
  83. class CommBinding;
  84. class somdMemoryMgr;
  85.  
  86. /*
  87.  * End of user-defined types.
  88.  */
  89.  
  90. /* A procedure to create the SOMDClientProxy Class */
  91. SOMEXTERN
  92. #if (defined(SOM_Module_SOMDCPRX_Source) || defined(SOMDClientProxy_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMDClientProxy))
  93. WIN32_DLLEXPORT
  94. #else
  95. WIN32_DLLIMPORT
  96. #endif
  97. SOMClass * SOMLINK SOMDClientProxyNewClass(
  98.         integer4,
  99.         integer4 );
  100.  
  101. /* The API to the SOMDClientProxy class object, and the methods it introduces. */
  102. SOMEXTERN struct SOMDClientProxyClassDataStructure {
  103.     SOMClass *classObject;
  104.     somMToken somdTargetFree;
  105.     somMToken somdTargetGetClass;
  106.     somMToken somdTargetGetClassName;
  107.     somMToken somdProxyFree;
  108.     somMToken somdProxyGetClass;
  109.     somMToken somdProxyGetClassName;
  110.     somMToken set_binding;
  111.     somMToken get_binding;
  112.     somMToken reset_binding;
  113.     somMToken _get_ctx_seq;
  114.     somMToken _set_ctx_seq;
  115.     somMToken somdReleaseResources;
  116.     somMToken _get_memoryMgr;
  117. }
  118. #if !(defined(SOM_Module_SOMDCPRX_Source) || defined(SOMDClientProxy_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMDClientProxy))
  119. WIN32_DLLIMPORT
  120. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  121. WIN32_DLLEXPORT
  122. #endif
  123. SOMDLINK SOMDClientProxyClassData;
  124. #define _SOMDClientProxy SOMDClientProxyClassData.classObject
  125.  
  126. /* The API to parentMtabs for SOMDClientProxy, and the instance data it introduces. */
  127. SOMEXTERN struct SOMDClientProxyCClassDataStructure {
  128.     somMethodTabs parentMtab;
  129.     somDToken              instanceDataToken;
  130. }
  131. #if !(defined(SOM_Module_SOMDCPRX_Source) || defined(SOMDClientProxy_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_SOMDClientProxy))
  132. WIN32_DLLIMPORT
  133. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  134. WIN32_DLLEXPORT
  135. #endif
  136. SOMDLINK SOMDClientProxyCClassData;
  137.  
  138. /*
  139.  * -- Typedefs for SOMDClientProxy Method Procedures
  140.  */
  141. extern "C" {
  142. typedef void   SOMLINK somTP_SOMDClientProxy_somdTargetFree(SOMDClientProxy *somSelf, Environment *ev);
  143. typedef somTP_SOMDClientProxy_somdTargetFree *somTD_SOMDClientProxy_somdTargetFree;
  144. typedef SOMClass*   SOMLINK somTP_SOMDClientProxy_somdTargetGetClass(SOMDClientProxy *somSelf, Environment *ev);
  145. typedef somTP_SOMDClientProxy_somdTargetGetClass *somTD_SOMDClientProxy_somdTargetGetClass;
  146. typedef string   SOMLINK somTP_SOMDClientProxy_somdTargetGetClassName(SOMDClientProxy *somSelf, Environment *ev);
  147. typedef somTP_SOMDClientProxy_somdTargetGetClassName *somTD_SOMDClientProxy_somdTargetGetClassName;
  148. typedef void   SOMLINK somTP_SOMDClientProxy_somdProxyFree(SOMDClientProxy *somSelf, Environment *ev);
  149. typedef somTP_SOMDClientProxy_somdProxyFree *somTD_SOMDClientProxy_somdProxyFree;
  150. typedef SOMClass*   SOMLINK somTP_SOMDClientProxy_somdProxyGetClass(SOMDClientProxy *somSelf, Environment *ev);
  151. typedef somTP_SOMDClientProxy_somdProxyGetClass *somTD_SOMDClientProxy_somdProxyGetClass;
  152. typedef string   SOMLINK somTP_SOMDClientProxy_somdProxyGetClassName(SOMDClientProxy *somSelf, Environment *ev);
  153. typedef somTP_SOMDClientProxy_somdProxyGetClassName *somTD_SOMDClientProxy_somdProxyGetClassName;
  154. typedef void   SOMLINK somTP_SOMDClientProxy_somdReleaseResources(SOMDClientProxy *somSelf, Environment *ev);
  155. typedef somTP_SOMDClientProxy_somdReleaseResources *somTD_SOMDClientProxy_somdReleaseResources;
  156.  
  157. /*
  158.  * -- Typedefs for Reintroduced Wrapper Methods
  159.  */
  160. typedef ImplementationDef*   SOMLINK somTP_SOMDClientProxy_get_implementation(SOMDClientProxy *somSelf, Environment *ev);
  161. typedef somTP_SOMDClientProxy_get_implementation *somTD_SOMDClientProxy_get_implementation;
  162. typedef InterfaceDef*   SOMLINK somTP_SOMDClientProxy_get_interface(SOMDClientProxy *somSelf, Environment *ev);
  163. typedef somTP_SOMDClientProxy_get_interface *somTD_SOMDClientProxy_get_interface;
  164. typedef boolean   SOMLINK somTP_SOMDClientProxy_is_nil(SOMDClientProxy *somSelf, Environment *ev);
  165. typedef somTP_SOMDClientProxy_is_nil *somTD_SOMDClientProxy_is_nil;
  166. typedef boolean   SOMLINK somTP_SOMDClientProxy_is_SOM_ref(SOMDClientProxy *somSelf, Environment *ev);
  167. typedef somTP_SOMDClientProxy_is_SOM_ref *somTD_SOMDClientProxy_is_SOM_ref;
  168. typedef boolean   SOMLINK somTP_SOMDClientProxy_is_constant(SOMDClientProxy *somSelf, Environment *ev);
  169. typedef somTP_SOMDClientProxy_is_constant *somTD_SOMDClientProxy_is_constant;
  170. typedef boolean   SOMLINK somTP_SOMDClientProxy_is_proxy(SOMDClientProxy *somSelf, Environment *ev);
  171. typedef somTP_SOMDClientProxy_is_proxy *somTD_SOMDClientProxy_is_proxy;
  172. typedef SOMDObject*   SOMLINK somTP_SOMDClientProxy_duplicate(SOMDClientProxy *somSelf, Environment *ev);
  173. typedef somTP_SOMDClientProxy_duplicate *somTD_SOMDClientProxy_duplicate;
  174. typedef void   SOMLINK somTP_SOMDClientProxy_release(SOMDClientProxy *somSelf, Environment *ev);
  175. typedef somTP_SOMDClientProxy_release *somTD_SOMDClientProxy_release;
  176. typedef ORBStatus   SOMLINK somTP_SOMDClientProxy_create_request(SOMDClientProxy *somSelf, Environment *ev,
  177.         Context* ctx,
  178.         Identifier operation,
  179.         NVList* arg_list,
  180.         NamedValue* result,
  181.         Request** request,
  182.         Flags req_flags);
  183. typedef somTP_SOMDClientProxy_create_request *somTD_SOMDClientProxy_create_request;
  184. typedef ORBStatus   SOMLINK somTP_SOMDClientProxy_create_request_args(SOMDClientProxy *somSelf, Environment *ev,
  185.         Identifier operation,
  186.         NVList** arg_list,
  187.         NamedValue* result);
  188. typedef somTP_SOMDClientProxy_create_request_args *somTD_SOMDClientProxy_create_request_args;
  189. typedef void   SOMLINK somTP_SOMDClientProxy_somDefaultInit(SOMDClientProxy *somSelf,
  190.         somInitCtrl* ctrl);
  191. typedef somTP_SOMDClientProxy_somDefaultInit *somTD_SOMDClientProxy_somDefaultInit;
  192. typedef void   SOMLINK somTP_SOMDClientProxy_somDestruct(SOMDClientProxy *somSelf,
  193.         octet doFree,
  194.         somDestructCtrl* ctrl);
  195. typedef somTP_SOMDClientProxy_somDestruct *somTD_SOMDClientProxy_somDestruct;
  196. typedef void   SOMLINK somTP_SOMDClientProxy_somDumpSelfInt(SOMDClientProxy *somSelf,
  197.         long level);
  198. typedef somTP_SOMDClientProxy_somDumpSelfInt *somTD_SOMDClientProxy_somDumpSelfInt;
  199. typedef void   SOMLINK somTP_SOMDClientProxy_somDefaultCopyInit(SOMDClientProxy *somSelf,
  200.         somInitCtrl* ctrl,
  201.         SOMObject* fromObj);
  202. typedef somTP_SOMDClientProxy_somDefaultCopyInit *somTD_SOMDClientProxy_somDefaultCopyInit;
  203. typedef SOMDClientProxy*   SOMLINK somTP_SOMDClientProxy_somDefaultAssign(SOMDClientProxy *somSelf,
  204.         somAssignCtrl* ctrl,
  205.         SOMObject* fromObj);
  206. typedef somTP_SOMDClientProxy_somDefaultAssign *somTD_SOMDClientProxy_somDefaultAssign;
  207. typedef void   SOMLINK somTP_SOMDClientProxy_somDefaultConstCopyInit(SOMDClientProxy *somSelf,
  208.         somInitCtrl* ctrl,
  209.         SOMObject* fromObj);
  210. typedef somTP_SOMDClientProxy_somDefaultConstCopyInit *somTD_SOMDClientProxy_somDefaultConstCopyInit;
  211. typedef void   SOMLINK somTP_SOMDClientProxy_somDefaultVCopyInit(SOMDClientProxy *somSelf,
  212.         somInitCtrl* ctrl,
  213.         SOMObject* fromObj);
  214. typedef somTP_SOMDClientProxy_somDefaultVCopyInit *somTD_SOMDClientProxy_somDefaultVCopyInit;
  215. typedef void   SOMLINK somTP_SOMDClientProxy_somDefaultConstVCopyInit(SOMDClientProxy *somSelf,
  216.         somInitCtrl* ctrl,
  217.         SOMObject* fromObj);
  218. typedef somTP_SOMDClientProxy_somDefaultConstVCopyInit *somTD_SOMDClientProxy_somDefaultConstVCopyInit;
  219. typedef SOMDClientProxy*   SOMLINK somTP_SOMDClientProxy_somDefaultConstAssign(SOMDClientProxy *somSelf,
  220.         somAssignCtrl* ctrl,
  221.         SOMObject* fromObj);
  222. typedef somTP_SOMDClientProxy_somDefaultConstAssign *somTD_SOMDClientProxy_somDefaultConstAssign;
  223. typedef SOMDClientProxy*   SOMLINK somTP_SOMDClientProxy_somDefaultVAssign(SOMDClientProxy *somSelf,
  224.         somAssignCtrl* ctrl,
  225.         SOMObject* fromObj);
  226. typedef somTP_SOMDClientProxy_somDefaultVAssign *somTD_SOMDClientProxy_somDefaultVAssign;
  227. typedef SOMDClientProxy*   SOMLINK somTP_SOMDClientProxy_somDefaultConstVAssign(SOMDClientProxy *somSelf,
  228.         somAssignCtrl* ctrl,
  229.         SOMObject* fromObj);
  230. typedef somTP_SOMDClientProxy_somDefaultConstVAssign *somTD_SOMDClientProxy_somDefaultConstVAssign;
  231. typedef void   SOMLINK somTP_SOMDClientProxy_somInit(SOMDClientProxy *somSelf);
  232. typedef somTP_SOMDClientProxy_somInit *somTD_SOMDClientProxy_somInit;
  233. typedef void   SOMLINK somTP_SOMDClientProxy_somFree(SOMDClientProxy *somSelf);
  234. typedef somTP_SOMDClientProxy_somFree *somTD_SOMDClientProxy_somFree;
  235. typedef void   SOMLINK somTP_SOMDClientProxy_somUninit(SOMDClientProxy *somSelf);
  236. typedef somTP_SOMDClientProxy_somUninit *somTD_SOMDClientProxy_somUninit;
  237. typedef SOMClass*   SOMLINK somTP_SOMDClientProxy_somGetClass(SOMDClientProxy *somSelf);
  238. typedef somTP_SOMDClientProxy_somGetClass *somTD_SOMDClientProxy_somGetClass;
  239. typedef string   SOMLINK somTP_SOMDClientProxy_somGetClassName(SOMDClientProxy *somSelf);
  240. typedef somTP_SOMDClientProxy_somGetClassName *somTD_SOMDClientProxy_somGetClassName;
  241. typedef long   SOMLINK somTP_SOMDClientProxy_somGetSize(SOMDClientProxy *somSelf);
  242. typedef somTP_SOMDClientProxy_somGetSize *somTD_SOMDClientProxy_somGetSize;
  243. typedef boolean   SOMLINK somTP_SOMDClientProxy_somIsA(SOMDClientProxy *somSelf,
  244.         SOMClass* aClassObj);
  245. typedef somTP_SOMDClientProxy_somIsA *somTD_SOMDClientProxy_somIsA;
  246. typedef boolean   SOMLINK somTP_SOMDClientProxy_somIsInstanceOf(SOMDClientProxy *somSelf,
  247.         SOMClass* aClassObj);
  248. typedef somTP_SOMDClientProxy_somIsInstanceOf *somTD_SOMDClientProxy_somIsInstanceOf;
  249. typedef boolean   SOMLINK somTP_SOMDClientProxy_somRespondsTo(SOMDClientProxy *somSelf,
  250.         somId mId);
  251. typedef somTP_SOMDClientProxy_somRespondsTo *somTD_SOMDClientProxy_somRespondsTo;
  252. typedef boolean   SOMLINK somTP_SOMDClientProxy_somDispatch(SOMDClientProxy *somSelf,
  253.         somToken* retValue,
  254.         somId methodId,
  255.         va_list ap);
  256. typedef somTP_SOMDClientProxy_somDispatch *somTD_SOMDClientProxy_somDispatch;
  257. typedef boolean   SOMLINK somTP_SOMDClientProxy_somClassDispatch(SOMDClientProxy *somSelf,
  258.         SOMClass* clsObj,
  259.         somToken* retValue,
  260.         somId methodId,
  261.         va_list ap);
  262. typedef somTP_SOMDClientProxy_somClassDispatch *somTD_SOMDClientProxy_somClassDispatch;
  263. typedef boolean   SOMLINK somTP_SOMDClientProxy_somCastObj(SOMDClientProxy *somSelf,
  264.         SOMClass* cls);
  265. typedef somTP_SOMDClientProxy_somCastObj *somTD_SOMDClientProxy_somCastObj;
  266. typedef boolean   SOMLINK somTP_SOMDClientProxy_somResetObj(SOMDClientProxy *somSelf);
  267. typedef somTP_SOMDClientProxy_somResetObj *somTD_SOMDClientProxy_somResetObj;
  268. typedef SOMObject*   SOMLINK somTP_SOMDClientProxy_somPrintSelf(SOMDClientProxy *somSelf);
  269. typedef somTP_SOMDClientProxy_somPrintSelf *somTD_SOMDClientProxy_somPrintSelf;
  270. typedef void   SOMLINK somTP_SOMDClientProxy_somDumpSelf(SOMDClientProxy *somSelf,
  271.         long level);
  272. typedef somTP_SOMDClientProxy_somDumpSelf *somTD_SOMDClientProxy_somDumpSelf;
  273. }
  274.  
  275. #endif /* SOMDClientProxy_API */
  276.  
  277.  
  278. /*
  279.  * -- This emitter believes that method thunks are unavailable,
  280.  * -- so somResolve will be called.
  281.  */
  282. #undef somresolve_
  283. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  284.  
  285. /*
  286.  * -- The C++ Wrapper Class for SOMDClientProxy
  287.  */
  288. class SOMDClientProxy : public SOMDObject
  289. {
  290. public:
  291.  
  292. // SOMDClientProxy::new creates the class object if necessary, and then uses somNewNoInit
  293. // to allocate memory and create the object. Initialization is in ctors.
  294. void *operator new(size_t)
  295. {
  296.    if (!_SOMDClientProxy) SOMDClientProxyNewClass(SOMDClientProxy_MajorVersion,SOMDClientProxy_MinorVersion);
  297.    return (void*)
  298.       SOM_Resolve(_SOMDClientProxy,SOMClass,somNewNoInit)
  299.          ((SOMClass *)((void*)_SOMDClientProxy));
  300. }
  301.  
  302. // SOMDClientProxy::delete uses somDestruct.
  303. void operator delete(void * obj)
  304. {
  305.    if (obj && *(void**)obj) {
  306.       SOM_Resolve(obj,SOMObject,somDestruct)
  307.          ((SOMObject*)obj, 1, 0);
  308.    }
  309. }
  310.  
  311. SOMDClientProxy()
  312. {
  313.    if (*(void**)this != 
  314.        ((somParentMtabStructPtr)
  315.         (SOMDClientProxyCClassData.parentMtab))->mtab)
  316.       return;
  317.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  318. }
  319.  
  320. SOMDClientProxy(SOMDClientProxy* fromObj)
  321. {
  322.    if (*(void**)this != 
  323.        ((somParentMtabStructPtr)
  324.         (SOMDClientProxyCClassData.parentMtab))->mtab)
  325.       return;
  326.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  327. }
  328.  
  329. SOMDClientProxy(const SOMDClientProxy* fromObj)
  330. {
  331.    if (*(void**)this != 
  332.        ((somParentMtabStructPtr)
  333.         (SOMDClientProxyCClassData.parentMtab))->mtab)
  334.       return;
  335.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  336. }
  337.  
  338.  
  339. /* method: somdTargetFree */
  340. void   somdTargetFree(Environment *ev)
  341. {
  342.    SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdTargetFree)
  343.     (this, ev);
  344. }
  345.  
  346.  
  347. /* method: somdTargetGetClass */
  348. SOMClass*   somdTargetGetClass(Environment *ev)
  349. {
  350.    return SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdTargetGetClass)
  351.     (this, ev);
  352. }
  353.  
  354.  
  355. /* method: somdTargetGetClassName */
  356. string   somdTargetGetClassName(Environment *ev)
  357. {
  358.    return SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdTargetGetClassName)
  359.     (this, ev);
  360. }
  361.  
  362.  
  363. /* method: somdProxyFree */
  364. void   somdProxyFree(Environment *ev)
  365. {
  366.    SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdProxyFree)
  367.     (this, ev);
  368. }
  369.  
  370.  
  371. /* method: somdProxyGetClass */
  372. SOMClass*   somdProxyGetClass(Environment *ev)
  373. {
  374.    return SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdProxyGetClass)
  375.     (this, ev);
  376. }
  377.  
  378.  
  379. /* method: somdProxyGetClassName */
  380. string   somdProxyGetClassName(Environment *ev)
  381. {
  382.    return SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdProxyGetClassName)
  383.     (this, ev);
  384. }
  385.  
  386.  
  387. /* method: somdReleaseResources */
  388. void   somdReleaseResources(Environment *ev)
  389. {
  390.    SOM_ResolveD(this,SOMDClientProxy,SOMDClientProxy,somdReleaseResources)
  391.     (this, ev);
  392. }
  393.  
  394.  
  395. /*
  396.  * Reintroduce inherited methods
  397.  */
  398.  
  399. /* method: get_implementation */
  400. ImplementationDef*   get_implementation(Environment *ev)
  401. {
  402.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,get_implementation)
  403.     (this, ev);
  404. }
  405.  
  406.  
  407. /* method: get_interface */
  408. InterfaceDef*   get_interface(Environment *ev)
  409. {
  410.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,get_interface)
  411.     (this, ev);
  412. }
  413.  
  414.  
  415. /* procedure: is_nil */
  416. static boolean   is_nil(SOMDClientProxy *somSelf, Environment *ev)
  417. {
  418.    return ((somTD_SOMDClientProxy_is_nil)SOMDObjectClassData.is_nil)
  419.     (somSelf, ev);
  420. }
  421.  
  422.  
  423. /* method: is_SOM_ref */
  424. boolean   is_SOM_ref(Environment *ev)
  425. {
  426.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,is_SOM_ref)
  427.     (this, ev);
  428. }
  429.  
  430.  
  431. /* method: is_constant */
  432. boolean   is_constant(Environment *ev)
  433. {
  434.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,is_constant)
  435.     (this, ev);
  436. }
  437.  
  438.  
  439. /* method: is_proxy */
  440. boolean   is_proxy(Environment *ev)
  441. {
  442.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,is_proxy)
  443.     (this, ev);
  444. }
  445.  
  446.  
  447. /* method: duplicate */
  448. SOMDObject*   duplicate(Environment *ev)
  449. {
  450.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,duplicate)
  451.     (this, ev);
  452. }
  453.  
  454.  
  455. /* method: release */
  456. void   release(Environment *ev)
  457. {
  458.    SOM_ResolveD(this,SOMDClientProxy,SOMDObject,release)
  459.     (this, ev);
  460. }
  461.  
  462.  
  463. /* method: create_request */
  464. ORBStatus   create_request(Environment *ev,
  465.         Context* ctx,
  466.         Identifier operation,
  467.         NVList* arg_list,
  468.         NamedValue* result,
  469.         Request** request,
  470.         Flags req_flags)
  471. {
  472.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,create_request)
  473.     (this, ev,ctx,operation,arg_list,result,request,req_flags);
  474. }
  475.  
  476.  
  477. /* method: create_request_args */
  478. ORBStatus   create_request_args(Environment *ev,
  479.         Identifier operation,
  480.         NVList** arg_list,
  481.         NamedValue* result)
  482. {
  483.    return SOM_ResolveD(this,SOMDClientProxy,SOMDObject,create_request_args)
  484.     (this, ev,operation,arg_list,result);
  485. }
  486.  
  487.  
  488. /* method: somDefaultInit */
  489. void   somDefaultInit(somInitCtrl* ctrl)
  490. {
  491.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultInit)
  492.     (this,ctrl);
  493. }
  494.  
  495.  
  496. /* method: somDestruct */
  497. void   somDestruct(octet doFree,
  498.         somDestructCtrl* ctrl)
  499. {
  500.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDestruct)
  501.     (this,doFree,ctrl);
  502. }
  503.  
  504.  
  505. /* method: somDumpSelfInt */
  506. void   somDumpSelfInt(long level)
  507. {
  508.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDumpSelfInt)
  509.     (this,level);
  510. }
  511.  
  512.  
  513. /* initializer method: somDefaultCopyInit */
  514. void   somDefaultCopyInit(somInitCtrl* ctrl,
  515.         SOMObject* fromObj)
  516. {
  517.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultCopyInit)
  518.     (this,ctrl,fromObj);
  519. }
  520.  
  521.  
  522. /* method: somDefaultAssign */
  523. SOMDClientProxy*  somDefaultAssign(somAssignCtrl* ctrl,
  524.         SOMObject* fromObj)
  525. {
  526.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultAssign)
  527.     (this,ctrl,fromObj);
  528. }
  529.  
  530.  
  531. /* initializer method: somDefaultConstCopyInit */
  532. void   somDefaultConstCopyInit(somInitCtrl* ctrl,
  533.         SOMObject* fromObj)
  534. {
  535.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultConstCopyInit)
  536.     (this,ctrl,fromObj);
  537. }
  538.  
  539.  
  540. /* initializer method: somDefaultVCopyInit */
  541. void   somDefaultVCopyInit(somInitCtrl* ctrl,
  542.         SOMObject* fromObj)
  543. {
  544.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultVCopyInit)
  545.     (this,ctrl,fromObj);
  546. }
  547.  
  548.  
  549. /* initializer method: somDefaultConstVCopyInit */
  550. void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
  551.         SOMObject* fromObj)
  552. {
  553.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultConstVCopyInit)
  554.     (this,ctrl,fromObj);
  555. }
  556.  
  557.  
  558. /* method: somDefaultConstAssign */
  559. SOMDClientProxy*  somDefaultConstAssign(somAssignCtrl* ctrl,
  560.         SOMObject* fromObj)
  561. {
  562.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultConstAssign)
  563.     (this,ctrl,fromObj);
  564. }
  565.  
  566.  
  567. /* method: somDefaultVAssign */
  568. SOMDClientProxy*  somDefaultVAssign(somAssignCtrl* ctrl,
  569.         SOMObject* fromObj)
  570. {
  571.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultVAssign)
  572.     (this,ctrl,fromObj);
  573. }
  574.  
  575.  
  576. /* method: somDefaultConstVAssign */
  577. SOMDClientProxy*  somDefaultConstVAssign(somAssignCtrl* ctrl,
  578.         SOMObject* fromObj)
  579. {
  580.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDefaultConstVAssign)
  581.     (this,ctrl,fromObj);
  582. }
  583.  
  584.  
  585. /* method: somInit */
  586. void   somInit()
  587. {
  588.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somInit)
  589.     (this);
  590. }
  591.  
  592.  
  593. /* method: somFree */
  594. void   somFree()
  595. {
  596.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somFree)
  597.     (this);
  598. }
  599.  
  600.  
  601. /* method: somUninit */
  602. void   somUninit()
  603. {
  604.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somUninit)
  605.     (this);
  606. }
  607.  
  608.  
  609. /* method: somGetClass */
  610. SOMClass*   somGetClass()
  611. {
  612.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somGetClass)
  613.     (this);
  614. }
  615.  
  616.  
  617. /* method: somGetClassName */
  618. string   somGetClassName()
  619. {
  620.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somGetClassName)
  621.     (this);
  622. }
  623.  
  624.  
  625. /* method: somGetSize */
  626. long   somGetSize()
  627. {
  628.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somGetSize)
  629.     (this);
  630. }
  631.  
  632.  
  633. /* method: somIsA */
  634. boolean   somIsA(SOMClass* aClassObj)
  635. {
  636.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somIsA)
  637.     (this,aClassObj);
  638. }
  639.  
  640.  
  641. /* method: somIsInstanceOf */
  642. boolean   somIsInstanceOf(SOMClass* aClassObj)
  643. {
  644.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somIsInstanceOf)
  645.     (this,aClassObj);
  646. }
  647.  
  648.  
  649. /* method: somRespondsTo */
  650. boolean   somRespondsTo(somId mId)
  651. {
  652.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somRespondsTo)
  653.     (this,mId);
  654. }
  655.  
  656.  
  657. /* va_list method: somDispatch */
  658. /* the va_list invocation form */
  659. boolean   SOMDClientProxy_somDispatch(somToken* retValue,
  660.         somId methodId,
  661.         va_list ap)
  662. {
  663. return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDispatch)
  664.     (this,retValue,methodId,ap);
  665. }
  666.  
  667. /* the varargs invocation form */
  668. boolean   somDispatch(somToken* retValue,
  669.         somId methodId,
  670.         ...)
  671. {
  672.    va_list ap;
  673.    va_start(ap, methodId);
  674.    boolean __somResult = 
  675.       SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDispatch)
  676.     (this,retValue,methodId,ap);
  677.    va_end(ap);
  678.    return __somResult;
  679. }
  680.  
  681.  
  682. /* va_list method: somClassDispatch */
  683. /* the va_list invocation form */
  684. boolean   SOMDClientProxy_somClassDispatch(SOMClass* clsObj,
  685.         somToken* retValue,
  686.         somId methodId,
  687.         va_list ap)
  688. {
  689. return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somClassDispatch)
  690.     (this,clsObj,retValue,methodId,ap);
  691. }
  692.  
  693. /* the varargs invocation form */
  694. boolean   somClassDispatch(SOMClass* clsObj,
  695.         somToken* retValue,
  696.         somId methodId,
  697.         ...)
  698. {
  699.    va_list ap;
  700.    va_start(ap, methodId);
  701.    boolean __somResult = 
  702.       SOM_ResolveD(this,SOMDClientProxy,SOMObject,somClassDispatch)
  703.     (this,clsObj,retValue,methodId,ap);
  704.    va_end(ap);
  705.    return __somResult;
  706. }
  707.  
  708.  
  709. /* method: somCastObj */
  710. boolean   somCastObj(SOMClass* cls)
  711. {
  712.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somCastObj)
  713.     (this,cls);
  714. }
  715.  
  716.  
  717. /* method: somResetObj */
  718. boolean   somResetObj()
  719. {
  720.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somResetObj)
  721.     (this);
  722. }
  723.  
  724.  
  725. /* method: somPrintSelf */
  726. SOMObject*   somPrintSelf()
  727. {
  728.    return SOM_ResolveD(this,SOMDClientProxy,SOMObject,somPrintSelf)
  729.     (this);
  730. }
  731.  
  732.  
  733. /* method: somDumpSelf */
  734. void   somDumpSelf(long level)
  735. {
  736.    SOM_ResolveD(this,SOMDClientProxy,SOMObject,somDumpSelf)
  737.     (this,level);
  738. }
  739.  
  740.  
  741.  
  742. };   /* SOMDClientProxy */
  743.  
  744.  
  745.  
  746. #endif       /* SOM_SOMDClientProxy_xh */
  747.