home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / som30tk.zip / som30os2.zip / include / somdom.idl < prev    next >
Text File  |  1996-12-24  |  4KB  |  129 lines

  1. //
  2. //   COMPONENT_NAME: somd
  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.10.1.10 src/somd/somdom.idl, somd, som3.0 9/26/96 14:02:20 [12/24/96 07:39:38]
  14.  
  15. //#  SOMDObjectMgr is a PUBLIC class derived from ObjectMgr.
  16. //#  This class is deprecated as of DSOM 3.0.
  17. //
  18. //   IDL interface spec for DSOM Distributed Object Manager.
  19. // 
  20. //   This is a subclass of the abstract ObjectMgr class.
  21. //   All ObjectMgr methods are implemented with DSOM calls.
  22.  
  23.  
  24. #ifndef somdom_idl
  25. #define somdom_idl
  26.  
  27. #include <om.idl>
  28.  
  29. interface SOMDServer;
  30.  
  31. interface SOMDObjectMgr : ObjectMgr
  32. {
  33.  
  34.   // In addition to the basic ObjectMgr interface, the DSOM ObjectMgr
  35.   // defines the following methods to find remote server objects:
  36.  
  37.   SOMDServer somdFindServer(in ImplId serverid);
  38.   
  39.   // Finds and returns a proxy to the Server object which is identified by the 
  40.   // ImplId.  (ImplId is defined at server registration time, and can be 
  41.   // obtained from the ImplDef.)
  42.   //
  43.   // OWNERSHIP of returned SOMDServer object is transferred to the caller.
  44.  
  45.   SOMDServer somdFindServerByName(in string servername);
  46.   
  47.   // Finds and returns a proxy to the Server object with the specified name.
  48.   // (The name is defined at server registration time, and can be obtained
  49.   // from the ImplDef.)
  50.   //
  51.   // OWNERSHIP of returned SOMDServer object is transferred to the caller.
  52.  
  53.   sequence<SOMDServer>  somdFindServersByClass(in Identifier objclass);
  54.   
  55.   // Finds all Server objects which can create an object of the named class.
  56.   //
  57.   // OWNERSHIP of returned SOMDServer objects is transferred to the caller.
  58.  
  59.   SOMDServer somdFindAnyServerByClass(in Identifier objclass);
  60.   
  61.   // Finds (any) Server object which can create an object of the named class.
  62.   // (This is a specialization of the somdFindServerByClass method.)
  63.   //
  64.   // OWNERSHIP of returned SOMDServer object is transferred to the caller.
  65.  
  66.   attribute boolean somd21somFree;
  67.  
  68. #ifdef __SOMIDL__
  69.  
  70.   implementation
  71.   {
  72.     releaseorder: somdFindServer, somdFindServerByName, 
  73.                   somdFindServersByClass, somdFindAnyServerByClass,
  74.           _get_somd21somFree, _set_somd21somFree;
  75.  
  76.     //# Class Modifiers
  77.     callstyle = idl;
  78.     dllname = "somd.dll";
  79.     majorversion = 2;
  80.     minorversion = 2;
  81.   
  82.     //# Method Modifiers
  83.     somInit: override;
  84.     somdNewObject: override;
  85.     somdGetIdFromObject: override;
  86.     somdGetObjectFromId: override;
  87.     somdReleaseObject: override;
  88.     somdDestroyObject: override;
  89.   
  90.     //# Passthrus
  91.     passthru C_h_after =  ""
  92.         "#ifndef SOM_IMPORTEXPORT_somd"
  93.         "#if defined(_WIN32) && !defined(SOM_DLL_somd)"
  94.             "#define SOM_IMPORTEXPORT_somd SOMDLLIMPORT"
  95.         "#else"
  96.             "#define SOM_IMPORTEXPORT_somd"
  97.         "#endif"
  98.         "#endif"
  99.       "#ifdef SOM_STRICT_IDL"
  100.       "SOMEXTERN SOM_IMPORTEXPORT_somd SOMDObjectMgr   SOMDLINK SOMD_ObjectMgr;"
  101.       "#else"
  102.       "SOMEXTERN SOM_IMPORTEXPORT_somd SOMDObjectMgr *  SOMDLINK SOMD_ObjectMgr;"
  103.       "#endif /* SOM_STRICT_IDL */"
  104.       ""
  105.       "#include <somdserv.h>"
  106.       "";
  107.  
  108.     passthru C_xh_after =  ""
  109.       "class SOMDObjectMgr;"
  110.         "#ifndef SOM_IMPORTEXPORT_somd"
  111.         "#if defined(_WIN32) && !defined(SOM_DLL_somd)"
  112.             "#define SOM_IMPORTEXPORT_somd SOMDLLIMPORT"
  113.         "#else"
  114.             "#define SOM_IMPORTEXPORT_somd"
  115.         "#endif"
  116.         "#endif"
  117.       "SOMEXTERN SOM_IMPORTEXPORT_somd SOMDObjectMgr * SOMDLINK SOMD_ObjectMgr;"
  118.       ""
  119.       "#include <somdserv.xh>"
  120.       "";
  121.  
  122.   };
  123.  
  124. #endif /* __SOMIDL__ */
  125.  
  126. };
  127.  
  128. #endif  /* somdom_idl */
  129.