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

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: h:\somnt\include\repostry.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: Development
  7.  *     SOM Emitter emitxh.dll: Development
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *    COMPONENT_NAME: somi
  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.  *   Repository: CORBA Interface for access to repository objects
  24.  *   See CORBA 7.5.2, pp.132-133
  25.  */
  26.  
  27.  
  28. #ifndef SOM_Repository_xh
  29. #define SOM_Repository_xh
  30.  
  31. class Repository;
  32.  
  33. #define Repository_MajorVersion 2
  34. #define Repository_MinorVersion 1
  35.  
  36. /*
  37.  * Passthru lines: File: "C.xh", "before"
  38.  */
  39.  
  40.     #include <stdio.h>
  41.     #include <somtcnst.xh>
  42.     #include <somir.xh>
  43.     #include <containd.xh>
  44.  
  45.  
  46. /* C++ SOM defs */
  47. #include <somcls.xh>
  48. #include <somcm.xh>
  49.  
  50. /* C++ parent defs */
  51. #ifndef SOM_Container_xh
  52. #include <containr.xh>
  53. #endif
  54.  
  55. #ifndef Repository_API
  56. #define Repository_API
  57. /*
  58.  * -- The Class API
  59.  */
  60.  
  61. /*
  62.  * Start of user-defined types:
  63.  */
  64. class SOMClass;
  65. class SOMObject;
  66. class Contained;
  67. typedef
  68. struct Repository_RepositoryDescription {
  69. Identifier name;
  70. string  id;
  71. string  defined_in;
  72. } Repository_RepositoryDescription;
  73.  
  74. /*
  75.  *  The inherited describe_contents method returns an instance
  76.  *  of this (RepositoryDescription) structure in the value
  77.  *  member of the Description structure defined in the Container
  78.  *  interface.
  79.  */
  80. typedef unsigned long Repository_irOpenErrorCodes;
  81. #define Repository_NOACCESS 1UL
  82. #define Repository_BADMAGICNUMBER 2UL
  83. #define Repository_MISSINGVERSIONINFO 3UL
  84. #define Repository_IOERROR 4UL
  85. #define Repository_VERSIONMISMATCH 5UL
  86. #define ex_Repository_irOpenError "::Repository::irOpenError"
  87. typedef
  88. struct Repository_irOpenError {
  89. Repository_irOpenErrorCodes errorCode;
  90. string  fileName;
  91. } Repository_irOpenError;
  92.  
  93. /*
  94.  *  The irOpenError and associated irOpenErrorCodes are a
  95.  *  SOM-unique extension to the Interface Repository.  These
  96.  *  errors may be raised by the somNew when instantiating the
  97.  *  Repository object and can be found in the SOM global
  98.  *  Environment.
  99.  */
  100.  
  101. #ifndef SOM_DONT_USE_SHORT_NAMES
  102. #ifndef SOMTGD_RepositoryDescription
  103.     #ifdef RepositoryDescription
  104.         #undef RepositoryDescription
  105.         #define SOMTGD_RepositoryDescription 1
  106.     #else
  107.         #define RepositoryDescription Repository_RepositoryDescription
  108.     #endif /* RepositoryDescription */
  109. #endif /* SOMTGD_RepositoryDescription */
  110. #ifndef SOMTGD_irOpenErrorCodes
  111.     #ifdef irOpenErrorCodes
  112.         #undef irOpenErrorCodes
  113.         #define SOMTGD_irOpenErrorCodes 1
  114.     #else
  115.         #define irOpenErrorCodes Repository_irOpenErrorCodes
  116.     #endif /* irOpenErrorCodes */
  117. #endif /* SOMTGD_irOpenErrorCodes */
  118. #ifndef SOMTGD_ex_irOpenError
  119.     #ifdef ex_irOpenError
  120.         #undef ex_irOpenError
  121.         #define SOMTGD_ex_irOpenError 1
  122.     #else
  123.         #define ex_irOpenError ex_Repository_irOpenError
  124.     #endif /* ex_irOpenError */
  125. #endif /* SOMTGD_ex_irOpenError */
  126. #ifndef SOMTGD_irOpenError
  127.     #ifdef irOpenError
  128.         #undef irOpenError
  129.         #define SOMTGD_irOpenError 1
  130.     #else
  131.         #define irOpenError Repository_irOpenError
  132.     #endif /* irOpenError */
  133. #endif /* SOMTGD_irOpenError */
  134. #endif /* SOM_DONT_USE_SHORT_NAMES */
  135.  
  136. /*
  137.  * End of user-defined types.
  138.  */
  139.  
  140. /* A procedure to create the Repository Class */
  141. SOMEXTERN
  142. #if (defined(SOM_Module_repostry_Source) || defined(Repository_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Repository))
  143. WIN32_DLLEXPORT
  144. #else
  145. WIN32_DLLIMPORT
  146. #endif
  147. SOMClass * SOMLINK RepositoryNewClass(
  148.         integer4,
  149.         integer4 );
  150.  
  151. /* The API to the Repository class object, and the methods it introduces. */
  152. SOMEXTERN struct RepositoryClassDataStructure {
  153.     SOMClass *classObject;
  154.     somMToken lookup_id;
  155.     somMToken lookup_modifier;
  156.     somMToken release_cache;
  157. }
  158. #if !(defined(SOM_Module_repostry_Source) || defined(Repository_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Repository))
  159. WIN32_DLLIMPORT
  160. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  161. WIN32_DLLEXPORT
  162. #endif
  163. SOMDLINK RepositoryClassData;
  164. #define _Repository RepositoryClassData.classObject
  165.  
  166. /* The API to parentMtabs for Repository, and the instance data it introduces. */
  167. SOMEXTERN struct RepositoryCClassDataStructure {
  168.     somMethodTabs parentMtab;
  169.     somDToken              instanceDataToken;
  170. }
  171. #if !(defined(SOM_Module_repostry_Source) || defined(Repository_Class_Source) || defined (SOM_DONT_IMPORT_CLASS_Repository))
  172. WIN32_DLLIMPORT
  173. #elif defined(_MSC_VER)||defined(_WIN32_DECL_PROTO)
  174. WIN32_DLLEXPORT
  175. #endif
  176. SOMDLINK RepositoryCClassData;
  177.  
  178. /*
  179.  * -- Typedefs for Repository Method Procedures
  180.  */
  181. extern "C" {
  182. typedef Contained*   SOMLINK somTP_Repository_lookup_id(Repository *somSelf, Environment *ev,
  183.         string search_id);
  184. typedef somTP_Repository_lookup_id *somTD_Repository_lookup_id;
  185. typedef string   SOMLINK somTP_Repository_lookup_modifier(Repository *somSelf, Environment *ev,
  186.         string name,
  187.         string modifier);
  188. typedef somTP_Repository_lookup_modifier *somTD_Repository_lookup_modifier;
  189. typedef void   SOMLINK somTP_Repository_release_cache(Repository *somSelf, Environment *ev);
  190. typedef somTP_Repository_release_cache *somTD_Repository_release_cache;
  191.  
  192. /*
  193.  * -- Typedefs for Reintroduced Wrapper Methods
  194.  */
  195. typedef _IDL_SEQUENCE_Contained   SOMLINK somTP_Repository_contents(Repository *somSelf, Environment *ev,
  196.         Container_InterfaceName limit_type,
  197.         boolean exclude_inherited);
  198. typedef somTP_Repository_contents *somTD_Repository_contents;
  199. typedef _IDL_SEQUENCE_Contained   SOMLINK somTP_Repository_lookup_name(Repository *somSelf, Environment *ev,
  200.         Identifier search_name,
  201.         long levels_to_search,
  202.         Container_InterfaceName limit_type,
  203.         boolean exclude_inherited);
  204. typedef somTP_Repository_lookup_name *somTD_Repository_lookup_name;
  205. typedef _IDL_SEQUENCE_Container_ContainerDescription   SOMLINK somTP_Repository_describe_contents(Repository *somSelf, Environment *ev,
  206.         Container_InterfaceName limit_type,
  207.         boolean exclude_inherited,
  208.         long max_returned_objs);
  209. typedef somTP_Repository_describe_contents *somTD_Repository_describe_contents;
  210. typedef void   SOMLINK somTP_Repository_somInit(Repository *somSelf);
  211. typedef somTP_Repository_somInit *somTD_Repository_somInit;
  212. typedef void   SOMLINK somTP_Repository_somUninit(Repository *somSelf);
  213. typedef somTP_Repository_somUninit *somTD_Repository_somUninit;
  214. typedef void   SOMLINK somTP_Repository_somDumpSelf(Repository *somSelf,
  215.         long level);
  216. typedef somTP_Repository_somDumpSelf *somTD_Repository_somDumpSelf;
  217. typedef void   SOMLINK somTP_Repository_somDumpSelfInt(Repository *somSelf,
  218.         long level);
  219. typedef somTP_Repository_somDumpSelfInt *somTD_Repository_somDumpSelfInt;
  220. typedef void   SOMLINK somTP_Repository_somDefaultInit(Repository *somSelf,
  221.         somInitCtrl* ctrl);
  222. typedef somTP_Repository_somDefaultInit *somTD_Repository_somDefaultInit;
  223. typedef void   SOMLINK somTP_Repository_somDestruct(Repository *somSelf,
  224.         octet doFree,
  225.         somDestructCtrl* ctrl);
  226. typedef somTP_Repository_somDestruct *somTD_Repository_somDestruct;
  227. typedef void   SOMLINK somTP_Repository_somDefaultCopyInit(Repository *somSelf,
  228.         somInitCtrl* ctrl,
  229.         SOMObject* fromObj);
  230. typedef somTP_Repository_somDefaultCopyInit *somTD_Repository_somDefaultCopyInit;
  231. typedef Repository*   SOMLINK somTP_Repository_somDefaultAssign(Repository *somSelf,
  232.         somAssignCtrl* ctrl,
  233.         SOMObject* fromObj);
  234. typedef somTP_Repository_somDefaultAssign *somTD_Repository_somDefaultAssign;
  235. typedef void   SOMLINK somTP_Repository_somDefaultConstCopyInit(Repository *somSelf,
  236.         somInitCtrl* ctrl,
  237.         SOMObject* fromObj);
  238. typedef somTP_Repository_somDefaultConstCopyInit *somTD_Repository_somDefaultConstCopyInit;
  239. typedef void   SOMLINK somTP_Repository_somDefaultVCopyInit(Repository *somSelf,
  240.         somInitCtrl* ctrl,
  241.         SOMObject* fromObj);
  242. typedef somTP_Repository_somDefaultVCopyInit *somTD_Repository_somDefaultVCopyInit;
  243. typedef void   SOMLINK somTP_Repository_somDefaultConstVCopyInit(Repository *somSelf,
  244.         somInitCtrl* ctrl,
  245.         SOMObject* fromObj);
  246. typedef somTP_Repository_somDefaultConstVCopyInit *somTD_Repository_somDefaultConstVCopyInit;
  247. typedef Repository*   SOMLINK somTP_Repository_somDefaultConstAssign(Repository *somSelf,
  248.         somAssignCtrl* ctrl,
  249.         SOMObject* fromObj);
  250. typedef somTP_Repository_somDefaultConstAssign *somTD_Repository_somDefaultConstAssign;
  251. typedef Repository*   SOMLINK somTP_Repository_somDefaultVAssign(Repository *somSelf,
  252.         somAssignCtrl* ctrl,
  253.         SOMObject* fromObj);
  254. typedef somTP_Repository_somDefaultVAssign *somTD_Repository_somDefaultVAssign;
  255. typedef Repository*   SOMLINK somTP_Repository_somDefaultConstVAssign(Repository *somSelf,
  256.         somAssignCtrl* ctrl,
  257.         SOMObject* fromObj);
  258. typedef somTP_Repository_somDefaultConstVAssign *somTD_Repository_somDefaultConstVAssign;
  259. typedef void   SOMLINK somTP_Repository_somFree(Repository *somSelf);
  260. typedef somTP_Repository_somFree *somTD_Repository_somFree;
  261. typedef SOMClass*   SOMLINK somTP_Repository_somGetClass(Repository *somSelf);
  262. typedef somTP_Repository_somGetClass *somTD_Repository_somGetClass;
  263. typedef string   SOMLINK somTP_Repository_somGetClassName(Repository *somSelf);
  264. typedef somTP_Repository_somGetClassName *somTD_Repository_somGetClassName;
  265. typedef long   SOMLINK somTP_Repository_somGetSize(Repository *somSelf);
  266. typedef somTP_Repository_somGetSize *somTD_Repository_somGetSize;
  267. typedef boolean   SOMLINK somTP_Repository_somIsA(Repository *somSelf,
  268.         SOMClass* aClassObj);
  269. typedef somTP_Repository_somIsA *somTD_Repository_somIsA;
  270. typedef boolean   SOMLINK somTP_Repository_somIsInstanceOf(Repository *somSelf,
  271.         SOMClass* aClassObj);
  272. typedef somTP_Repository_somIsInstanceOf *somTD_Repository_somIsInstanceOf;
  273. typedef boolean   SOMLINK somTP_Repository_somRespondsTo(Repository *somSelf,
  274.         somId mId);
  275. typedef somTP_Repository_somRespondsTo *somTD_Repository_somRespondsTo;
  276. typedef boolean   SOMLINK somTP_Repository_somDispatch(Repository *somSelf,
  277.         somToken* retValue,
  278.         somId methodId,
  279.         va_list ap);
  280. typedef somTP_Repository_somDispatch *somTD_Repository_somDispatch;
  281. typedef boolean   SOMLINK somTP_Repository_somClassDispatch(Repository *somSelf,
  282.         SOMClass* clsObj,
  283.         somToken* retValue,
  284.         somId methodId,
  285.         va_list ap);
  286. typedef somTP_Repository_somClassDispatch *somTD_Repository_somClassDispatch;
  287. typedef boolean   SOMLINK somTP_Repository_somCastObj(Repository *somSelf,
  288.         SOMClass* cls);
  289. typedef somTP_Repository_somCastObj *somTD_Repository_somCastObj;
  290. typedef boolean   SOMLINK somTP_Repository_somResetObj(Repository *somSelf);
  291. typedef somTP_Repository_somResetObj *somTD_Repository_somResetObj;
  292. typedef SOMObject*   SOMLINK somTP_Repository_somPrintSelf(Repository *somSelf);
  293. typedef somTP_Repository_somPrintSelf *somTD_Repository_somPrintSelf;
  294. }
  295.  
  296. #endif /* Repository_API */
  297.  
  298.  
  299. /*
  300.  * -- This emitter believes that method thunks are unavailable,
  301.  * -- so somResolve will be called.
  302.  */
  303. #undef somresolve_
  304. #define somresolve_(obj,mToken) (somResolve(obj,mToken))
  305.  
  306. /*
  307.  * -- The C++ Wrapper Class for Repository
  308.  */
  309. class Repository : public Container
  310. {
  311. public:
  312.  
  313. // Repository::new creates the class object if necessary, and then uses somNewNoInit
  314. // to allocate memory and create the object. Initialization is in ctors.
  315. void *operator new(size_t)
  316. {
  317.    if (!_Repository) RepositoryNewClass(Repository_MajorVersion,Repository_MinorVersion);
  318.    return (void*)
  319.       SOM_Resolve(_Repository,SOMClass,somNewNoInit)
  320.          ((SOMClass *)((void*)_Repository));
  321. }
  322.  
  323. // Repository::delete uses somDestruct.
  324. void operator delete(void * obj)
  325. {
  326.    if (obj && *(void**)obj) {
  327.       SOM_Resolve(obj,SOMObject,somDestruct)
  328.          ((SOMObject*)obj, 1, 0);
  329.    }
  330. }
  331.  
  332. Repository()
  333. {
  334.    if (*(void**)this != 
  335.        ((somParentMtabStructPtr)
  336.         (RepositoryCClassData.parentMtab))->mtab)
  337.       return;
  338.    ((SOMObject*)((void*)this))->somDefaultInit(0);
  339. }
  340.  
  341. Repository(Repository* fromObj)
  342. {
  343.    if (*(void**)this != 
  344.        ((somParentMtabStructPtr)
  345.         (RepositoryCClassData.parentMtab))->mtab)
  346.       return;
  347.    ((SOMObject*)((void*)this))->somDefaultCopyInit(0,((SOMObject*)((void*)fromObj)));
  348. }
  349.  
  350. Repository(const Repository* fromObj)
  351. {
  352.    if (*(void**)this != 
  353.        ((somParentMtabStructPtr)
  354.         (RepositoryCClassData.parentMtab))->mtab)
  355.       return;
  356.    ((SOMObject*)((void*)this))->somDefaultConstCopyInit(0,((SOMObject*)((void*)fromObj)));
  357. }
  358.  
  359.  
  360. /* method: lookup_id */
  361. Contained*   lookup_id(Environment *ev,
  362.         string search_id)
  363. {
  364.    return SOM_ResolveD(this,Repository,Repository,lookup_id)
  365.     (this, ev,search_id);
  366. }
  367.  
  368.  
  369. /* method: lookup_modifier */
  370. string   lookup_modifier(Environment *ev,
  371.         string name,
  372.         string modifier)
  373. {
  374.    return SOM_ResolveD(this,Repository,Repository,lookup_modifier)
  375.     (this, ev,name,modifier);
  376. }
  377.  
  378.  
  379. /* method: release_cache */
  380. void   release_cache(Environment *ev)
  381. {
  382.    SOM_ResolveD(this,Repository,Repository,release_cache)
  383.     (this, ev);
  384. }
  385.  
  386.  
  387. /*
  388.  * Reintroduce inherited methods
  389.  */
  390.  
  391. /* method: contents */
  392. _IDL_SEQUENCE_Contained   contents(Environment *ev,
  393.         Container_InterfaceName limit_type,
  394.         boolean exclude_inherited)
  395. {
  396.    return SOM_ResolveD(this,Repository,Container,contents)
  397.     (this, ev,limit_type,exclude_inherited);
  398. }
  399.  
  400.  
  401. /* method: lookup_name */
  402. _IDL_SEQUENCE_Contained   lookup_name(Environment *ev,
  403.         Identifier search_name,
  404.         long levels_to_search,
  405.         Container_InterfaceName limit_type,
  406.         boolean exclude_inherited)
  407. {
  408.    return SOM_ResolveD(this,Repository,Container,lookup_name)
  409.     (this, ev,search_name,levels_to_search,limit_type,exclude_inherited);
  410. }
  411.  
  412.  
  413. /* method: describe_contents */
  414. _IDL_SEQUENCE_Container_ContainerDescription   describe_contents(Environment *ev,
  415.         Container_InterfaceName limit_type,
  416.         boolean exclude_inherited,
  417.         long max_returned_objs)
  418. {
  419.    return SOM_ResolveD(this,Repository,Container,describe_contents)
  420.     (this, ev,limit_type,exclude_inherited,max_returned_objs);
  421. }
  422.  
  423.  
  424. /* method: somInit */
  425. void   somInit()
  426. {
  427.    SOM_ResolveD(this,Repository,SOMObject,somInit)
  428.     (this);
  429. }
  430.  
  431.  
  432. /* method: somUninit */
  433. void   somUninit()
  434. {
  435.    SOM_ResolveD(this,Repository,SOMObject,somUninit)
  436.     (this);
  437. }
  438.  
  439.  
  440. /* method: somDumpSelf */
  441. void   somDumpSelf(long level)
  442. {
  443.    SOM_ResolveD(this,Repository,SOMObject,somDumpSelf)
  444.     (this,level);
  445. }
  446.  
  447.  
  448. /* method: somDumpSelfInt */
  449. void   somDumpSelfInt(long level)
  450. {
  451.    SOM_ResolveD(this,Repository,SOMObject,somDumpSelfInt)
  452.     (this,level);
  453. }
  454.  
  455.  
  456. /* initializer method: somDefaultInit */
  457. void   somDefaultInit(somInitCtrl* ctrl)
  458. {
  459.    SOM_ResolveD(this,Repository,SOMObject,somDefaultInit)
  460.     (this,ctrl);
  461. }
  462.  
  463.  
  464. /* method: somDestruct */
  465. void   somDestruct(octet doFree,
  466.         somDestructCtrl* ctrl)
  467. {
  468.    SOM_ResolveD(this,Repository,SOMObject,somDestruct)
  469.     (this,doFree,ctrl);
  470. }
  471.  
  472.  
  473. /* initializer method: somDefaultCopyInit */
  474. void   somDefaultCopyInit(somInitCtrl* ctrl,
  475.         SOMObject* fromObj)
  476. {
  477.    SOM_ResolveD(this,Repository,SOMObject,somDefaultCopyInit)
  478.     (this,ctrl,fromObj);
  479. }
  480.  
  481.  
  482. /* method: somDefaultAssign */
  483. Repository*  somDefaultAssign(somAssignCtrl* ctrl,
  484.         SOMObject* fromObj)
  485. {
  486.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultAssign)
  487.     (this,ctrl,fromObj);
  488. }
  489.  
  490.  
  491. /* initializer method: somDefaultConstCopyInit */
  492. void   somDefaultConstCopyInit(somInitCtrl* ctrl,
  493.         SOMObject* fromObj)
  494. {
  495.    SOM_ResolveD(this,Repository,SOMObject,somDefaultConstCopyInit)
  496.     (this,ctrl,fromObj);
  497. }
  498.  
  499.  
  500. /* initializer method: somDefaultVCopyInit */
  501. void   somDefaultVCopyInit(somInitCtrl* ctrl,
  502.         SOMObject* fromObj)
  503. {
  504.    SOM_ResolveD(this,Repository,SOMObject,somDefaultVCopyInit)
  505.     (this,ctrl,fromObj);
  506. }
  507.  
  508.  
  509. /* initializer method: somDefaultConstVCopyInit */
  510. void   somDefaultConstVCopyInit(somInitCtrl* ctrl,
  511.         SOMObject* fromObj)
  512. {
  513.    SOM_ResolveD(this,Repository,SOMObject,somDefaultConstVCopyInit)
  514.     (this,ctrl,fromObj);
  515. }
  516.  
  517.  
  518. /* method: somDefaultConstAssign */
  519. Repository*  somDefaultConstAssign(somAssignCtrl* ctrl,
  520.         SOMObject* fromObj)
  521. {
  522.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultConstAssign)
  523.     (this,ctrl,fromObj);
  524. }
  525.  
  526.  
  527. /* method: somDefaultVAssign */
  528. Repository*  somDefaultVAssign(somAssignCtrl* ctrl,
  529.         SOMObject* fromObj)
  530. {
  531.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultVAssign)
  532.     (this,ctrl,fromObj);
  533. }
  534.  
  535.  
  536. /* method: somDefaultConstVAssign */
  537. Repository*  somDefaultConstVAssign(somAssignCtrl* ctrl,
  538.         SOMObject* fromObj)
  539. {
  540.    return SOM_ResolveD(this,Repository,SOMObject,somDefaultConstVAssign)
  541.     (this,ctrl,fromObj);
  542. }
  543.  
  544.  
  545. /* method: somFree */
  546. void   somFree()
  547. {
  548.    SOM_ResolveD(this,Repository,SOMObject,somFree)
  549.     (this);
  550. }
  551.  
  552.  
  553. /* method: somGetClass */
  554. SOMClass*   somGetClass()
  555. {
  556.    return SOM_ResolveD(this,Repository,SOMObject,somGetClass)
  557.     (this);
  558. }
  559.  
  560.  
  561. /* method: somGetClassName */
  562. string   somGetClassName()
  563. {
  564.    return SOM_ResolveD(this,Repository,SOMObject,somGetClassName)
  565.     (this);
  566. }
  567.  
  568.  
  569. /* method: somGetSize */
  570. long   somGetSize()
  571. {
  572.    return SOM_ResolveD(this,Repository,SOMObject,somGetSize)
  573.     (this);
  574. }
  575.  
  576.  
  577. /* method: somIsA */
  578. boolean   somIsA(SOMClass* aClassObj)
  579. {
  580.    return SOM_ResolveD(this,Repository,SOMObject,somIsA)
  581.     (this,aClassObj);
  582. }
  583.  
  584.  
  585. /* method: somIsInstanceOf */
  586. boolean   somIsInstanceOf(SOMClass* aClassObj)
  587. {
  588.    return SOM_ResolveD(this,Repository,SOMObject,somIsInstanceOf)
  589.     (this,aClassObj);
  590. }
  591.  
  592.  
  593. /* method: somRespondsTo */
  594. boolean   somRespondsTo(somId mId)
  595. {
  596.    return SOM_ResolveD(this,Repository,SOMObject,somRespondsTo)
  597.     (this,mId);
  598. }
  599.  
  600.  
  601. /* va_list method: somDispatch */
  602. /* the va_list invocation form */
  603. boolean   Repository_somDispatch(somToken* retValue,
  604.         somId methodId,
  605.         va_list ap)
  606. {
  607. return SOM_ResolveD(this,Repository,SOMObject,somDispatch)
  608.     (this,retValue,methodId,ap);
  609. }
  610.  
  611. /* the varargs invocation form */
  612. boolean   somDispatch(somToken* retValue,
  613.         somId methodId,
  614.         ...)
  615. {
  616.    va_list ap;
  617.    va_start(ap, methodId);
  618.    boolean __somResult = 
  619.       SOM_ResolveD(this,Repository,SOMObject,somDispatch)
  620.     (this,retValue,methodId,ap);
  621.    va_end(ap);
  622.    return __somResult;
  623. }
  624.  
  625.  
  626. /* va_list method: somClassDispatch */
  627. /* the va_list invocation form */
  628. boolean   Repository_somClassDispatch(SOMClass* clsObj,
  629.         somToken* retValue,
  630.         somId methodId,
  631.         va_list ap)
  632. {
  633. return SOM_ResolveD(this,Repository,SOMObject,somClassDispatch)
  634.     (this,clsObj,retValue,methodId,ap);
  635. }
  636.  
  637. /* the varargs invocation form */
  638. boolean   somClassDispatch(SOMClass* clsObj,
  639.         somToken* retValue,
  640.         somId methodId,
  641.         ...)
  642. {
  643.    va_list ap;
  644.    va_start(ap, methodId);
  645.    boolean __somResult = 
  646.       SOM_ResolveD(this,Repository,SOMObject,somClassDispatch)
  647.     (this,clsObj,retValue,methodId,ap);
  648.    va_end(ap);
  649.    return __somResult;
  650. }
  651.  
  652.  
  653. /* method: somCastObj */
  654. boolean   somCastObj(SOMClass* cls)
  655. {
  656.    return SOM_ResolveD(this,Repository,SOMObject,somCastObj)
  657.     (this,cls);
  658. }
  659.  
  660.  
  661. /* method: somResetObj */
  662. boolean   somResetObj()
  663. {
  664.    return SOM_ResolveD(this,Repository,SOMObject,somResetObj)
  665.     (this);
  666. }
  667.  
  668.  
  669. /* method: somPrintSelf */
  670. SOMObject*   somPrintSelf()
  671. {
  672.    return SOM_ResolveD(this,Repository,SOMObject,somPrintSelf)
  673.     (this);
  674. }
  675.  
  676.  
  677.  
  678. };   /* Repository */
  679.  
  680.  
  681.  
  682. #endif       /* SOM_Repository_xh */
  683.