home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / idsmcon.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-22  |  3.1 KB  |  118 lines

  1. #ifndef _IDSMCON_HPP_
  2. #define _IDSMCON_HPP_
  3.  
  4. /*******************************************************************************
  5. * FILE NAME: idsmcon.hpp                                                       *
  6. *                                                                              *
  7. * DESCRIPTION:                                                                 *
  8. *     IDatastore - Manage a datastore connection.                              *
  9. *                                                                              *
  10. * The IDatastore allows a client to establish and manage                       *
  11. * datastore connection.                                                        *
  12. *                                                                              *
  13. *******************************************************************************/
  14.  
  15. /***********************************************
  16.  
  17.     Licensed Materials - Property of IBM
  18.  
  19.     5622-880   5801-AAR
  20.  
  21.     (c) Copyright IBM Corp 1991, 1996.
  22.  
  23. ************************************************/
  24.  
  25. #ifndef __TOS_WIN__
  26.  #ifndef DAX_IMPORTEXPORT
  27.    #define DAX_IMPORTEXPORT _Export
  28.  #endif
  29. #else
  30.  #ifndef DAX_IMPORTEXPORT
  31.    #define DAX_IMPORTEXPORT _Import
  32.  #endif
  33. #endif
  34.  
  35. #include <istring.hpp>
  36. #include <istdntfy.hpp>
  37. #include <idsexc.hpp>
  38. #include <idsmcbs.hpp>
  39.  
  40. #pragma pack(4)
  41.  
  42. class DAX_IMPORTEXPORT IDatastore : public IDatastoreBase
  43. {
  44.  
  45. public:
  46.  
  47.   IDatastore ();                                  // default Constructor
  48.  
  49.   IDatastore ( const char* datastoreName,
  50.                const char* userName = "",
  51.                const char* authentication = "");
  52.  
  53. virtual
  54.   ~IDatastore ();                                 // Destructor
  55.  
  56. virtual IDatastore&
  57.    connect ();
  58.  
  59. virtual IDatastore& connect ( const char* datastoreName,
  60.                               const char* userName,
  61.                               const char* authentication );
  62.  
  63. virtual IDatastore& connect ( const char* datastoreName );
  64.  
  65. virtual IDatastore&
  66.    connect ( const char* userName,
  67.              const char* authentication);
  68.  
  69. virtual IDatastore&
  70.    disconnect ();
  71.  
  72. virtual IDatastore&
  73.    commit ();
  74.  
  75. virtual IDatastore&
  76.    rollback ();
  77.  
  78. virtual IDatastore&
  79.    setUserName(const char* aUserName);
  80.  
  81. virtual IDatastore&
  82.    setAuthentication(const char* aAuthentication);
  83.  
  84. virtual IDatastore&
  85.    setDatastoreName(const char* aDatastoreName);
  86.  
  87. virtual IDatastore&
  88.    executeSQL(const char* aCmd);
  89.  
  90. // returns true if Share Mode is Exclusive
  91. virtual Boolean
  92.    isShareModeExclusive ();
  93.  
  94. // enable Share Mode to Exclusive (or reset to Shared)
  95. virtual IDatastore&
  96.    enableShareModeExclusive(Boolean enable = true);
  97.  
  98.  
  99. static const INotificationId readyId;
  100. static const INotificationId shareModeExclusiveId;
  101.  
  102.   virtual IDatastore& initializePart();
  103.  
  104. protected:
  105. /*--------------------------------- PROTECTED --------------------------------*/
  106.    Boolean makeConnections();
  107.  
  108. private:
  109. /*--------------------------------- PRIVATE ----------------------------------*/
  110.  
  111.    IString type();
  112.  
  113. };
  114.  
  115. #pragma pack()
  116.  
  117. #endif /* _IDSMCON_HPP_ */
  118.