Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

112 lines
2.7 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1999-2000 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // ClusterService.h
  7. //
  8. // Implementation File:
  9. // ClusterService.cpp
  10. //
  11. // Description:
  12. // Definition of the CClusterService class.
  13. //
  14. // Author:
  15. // Henry Wang (HenryWa) 24-AUG-1999
  16. //
  17. // Notes:
  18. //
  19. //////////////////////////////////////////////////////////////////////////////
  20. #pragma once
  21. //////////////////////////////////////////////////////////////////////////////
  22. // Include Files
  23. //////////////////////////////////////////////////////////////////////////////
  24. #include "ProvBase.h"
  25. #include "ClusterObjAssoc.h"
  26. //////////////////////////////////////////////////////////////////////////////
  27. // Forward Declarations
  28. //////////////////////////////////////////////////////////////////////////////
  29. class CClusterService;
  30. //////////////////////////////////////////////////////////////////////////////
  31. //++
  32. //
  33. // class CClusterService
  34. //
  35. // Description:
  36. // Provider Implement for cluster Node
  37. //
  38. //--
  39. //////////////////////////////////////////////////////////////////////////////
  40. class CClusterService : public CProvBase
  41. {
  42. //
  43. // constructor
  44. //
  45. public:
  46. CClusterService::CClusterService(
  47. LPCWSTR pwszNameIn,
  48. CWbemServices * pNamespaceIn
  49. );
  50. //
  51. // methods
  52. //
  53. public:
  54. virtual SCODE EnumInstance(
  55. long lFlagsIn,
  56. IWbemContext * pCtxIn,
  57. IWbemObjectSink * pHandlerIn
  58. );
  59. virtual SCODE GetObject(
  60. CObjPath & rObjPathIn,
  61. long lFlagsIn,
  62. IWbemContext * pCtxIn,
  63. IWbemObjectSink * pHandlerIn
  64. );
  65. virtual SCODE ExecuteMethod(
  66. CObjPath & rObjPathIn,
  67. WCHAR * pwszMethodNameIn,
  68. long lFlagIn,
  69. IWbemClassObject * pParamsIn,
  70. IWbemObjectSink * pHandlerIn
  71. ) ;
  72. virtual SCODE PutInstance(
  73. CWbemClassObject & rInstToPutIn,
  74. long lFlagIn,
  75. IWbemContext * pCtxIn,
  76. IWbemObjectSink * pHandlerIn
  77. );
  78. virtual SCODE DeleteInstance(
  79. CObjPath & rObjPathIn,
  80. long lFlagIn,
  81. IWbemContext * pCtxIn,
  82. IWbemObjectSink * pHandlerIn
  83. );
  84. static CProvBase * S_CreateThis(
  85. LPCWSTR pwszNameIn,
  86. CWbemServices * pNamespaceIn,
  87. DWORD dwEnumTypeIn
  88. );
  89. protected:
  90. static const SPropMapEntryArray * RgGetPropMap( void );
  91. void ClusterToWMI(
  92. HNODE hNodeIn,
  93. IWbemObjectSink * pHandlerIn
  94. );
  95. }; //*** class CClusterService