home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / tolkit45.zip / os2tk45 / som / include / pid.idl < prev    next >
Text File  |  1999-02-22  |  3KB  |  116 lines

  1. //
  2. //   COMPONENT_NAME: somp
  3. //
  4. //   ORIGINS: 27
  5. //
  6. //
  7. //    25H7912  (C)  COPYRIGHT International Business Machines Corp. 1992,1994,1996 
  8. //   All Rights Reserved
  9. //   Licensed Materials - Property of IBM
  10. //   US Government Users Restricted Rights - Use, duplication or
  11. //   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  12. //
  13. //#  @(#) 2.9 src/somp/pid.idl, somp, som2.1 12/26/95 16:58:54 [7/30/96 14:46:57]
  14.  
  15.  
  16.  
  17. #ifndef pid_idl
  18. #define pid_idl
  19.  
  20. #include <somsid.idl>
  21. #ifdef junk
  22. #include <sid.idl>
  23. #endif
  24. #include <somperrd.idl>
  25.  
  26. interface SOMPPersistentId : SOMUTStringId
  27.  
  28. // This is the class for a persistent ID.
  29. //
  30. // A persistent ID is a string of the form:
  31. //
  32. //   IOGroupMgrClassname ':' RepositoryName ':' RepositoryOffset
  33. //
  34. // For the file system, an example of a persistent ID would be:
  35. //
  36. //   "SOMPFSAIOGroupMgr:/u/otp/stuff/animals:0"
  37. //
  38. // where:
  39. //
  40. //   SOMPFSAIOGroupMgr is the IO Group Mgr Class name
  41. //
  42. //   /u/otp/stuff/animals is the Repository name (i.e. the file name)
  43. //
  44. //   0 is the Repository offset (roughly, record number)
  45.  
  46. {
  47.    void sompSetIOGroupMgrClassName(in string newName) raises (SOMPError::sompException);
  48. // Sets the IO Group Manager Class portion of the ID.
  49.  
  50.    string sompGetIOGroupMgrClassName(in string toBuffer);
  51. // Gets the IO Group Manager Class portion of the ID.
  52.  
  53.    short sompGetIOGroupMgrClassNameLen();
  54. // Gets the length of the IO Group Manager Class portion of the ID.
  55.  
  56.    void sompSetIOGroupName(in string newName)raises (SOMPError::sompException);
  57. // Sets the path & file portion of the ID.
  58.  
  59.    string sompGetIOGroupName(in string toBuffer);
  60. // Gets the path & file portion of the ID.
  61.  
  62.    short sompGetIOGroupNameLen();
  63. // Gets the length of the path & file portion of the ID.
  64.  
  65.    void sompSetGroupOffset(in long offset) raises (SOMPError::sompException);
  66. // Sets the offset portion of the ID.
  67.  
  68.    long sompGetGroupOffset();
  69. // Gets the offset portion of the ID.
  70.  
  71.    boolean sompEqualsIOGroupName(in SOMPPersistentId id);
  72. // Compare this object's file & path name the file & path name
  73. // part of the given ID. Return TRUE if they are equivalent.
  74.  
  75.  
  76. #ifdef __SOMIDL__
  77.  
  78. implementation
  79. {
  80.    callstyle=idl;
  81.    dllname="somp.dll";
  82.  
  83.    releaseorder: sompSetIOGroupMgrClassName, sompGetIOGroupMgrClassName,
  84.          sompGetIOGroupMgrClassNameLen, sompSetIOGroupName,
  85.          sompGetIOGroupName, sompGetIOGroupNameLen,
  86.          sompSetGroupOffset, sompGetGroupOffset,
  87.          sompEqualsIOGroupName, sompBuildIdString;
  88.  
  89. // Class Modifiers
  90.    majorversion = 2;
  91.    minorversion = 1;
  92.    filestem = pid;
  93.  
  94.  
  95. // Method Modifiers
  96.    somInit: override;
  97.    somUninit: override;
  98.    somDumpSelfInt: override;
  99.    somutSetIdString: override;
  100.    somutSetIdId: override;
  101.    somutGetIdString: override;
  102.    somutGetIdStringLen: override;
  103.    somutEqualsId: override;
  104.    somutEqualsString: override;
  105.    somutCompareId: override;
  106.    somutCompareString: override;
  107.    somutHashId: override;
  108.  
  109.  
  110. };
  111. #endif /* __SOMIDL__ */
  112.  
  113. };
  114.  
  115. #endif  /* pid_idl */
  116.