Leaked source code of windows server 2003
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.

90 lines
1.8 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1999 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // dnsbase.h
  7. //
  8. // Implementation File:
  9. // dnsbase.cpp
  10. //
  11. // Description:
  12. // Definition of the CDnsbase class.
  13. //
  14. // Author:
  15. // Henry Wang (Henrywa) March 8, 2000
  16. //
  17. // Notes:
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. #pragma once
  21. #include "common.h"
  22. #include "dnsWrap.h"
  23. class CSqlEval;
  24. /////////////////////////////////////////////////////////////////////////////
  25. //++
  26. //
  27. // class CDnsBase
  28. //
  29. // Description:
  30. // interface class defines all operations can be performed on provider
  31. //
  32. //
  33. // Inheritance:
  34. //
  35. //
  36. //--
  37. /////////////////////////////////////////////////////////////////////////////
  38. class CDnsBase
  39. {
  40. public:
  41. virtual SCODE EnumInstance(
  42. long lFlags,
  43. IWbemContext * pCtx,
  44. IWbemObjectSink * pHandler) = 0;
  45. virtual SCODE GetObject(
  46. CObjPath & ObjectPath,
  47. long lFlags,
  48. IWbemContext * pCtx,
  49. IWbemObjectSink * pHandler ) = 0;
  50. virtual SCODE ExecuteMethod(
  51. CObjPath &,
  52. WCHAR *,
  53. long,
  54. IWbemClassObject *,
  55. IWbemObjectSink *
  56. ) =0;
  57. virtual SCODE PutInstance(
  58. IWbemClassObject *,
  59. long ,
  60. IWbemContext *,
  61. IWbemObjectSink* );
  62. virtual SCODE DeleteInstance(
  63. CObjPath &,
  64. long ,
  65. IWbemContext * ,
  66. IWbemObjectSink *
  67. );
  68. virtual SCODE ExecQuery(
  69. CSqlEval * ,
  70. long lFlags,
  71. IWbemContext * pCtx,
  72. IWbemObjectSink * pResponseHandler) ;
  73. CDnsBase();
  74. CDnsBase(
  75. const WCHAR *,
  76. CWbemServices *);
  77. virtual ~CDnsBase();
  78. protected:
  79. CWbemServices * m_pNamespace;
  80. IWbemClassObject* m_pClass;
  81. };