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.

95 lines
2.1 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1999 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // dnsdomain.h
  7. //
  8. // Implementation File:
  9. // dnscache.cpp
  10. //
  11. // Description:
  12. // Definition of the CDnsDomain class.
  13. //
  14. // Author:
  15. // Henry Wang (Henrywa) March 8, 2000
  16. //
  17. // Notes:
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. #pragma once
  21. #include "dnsbase.h"
  22. class CObjPath;
  23. class CDnsRpcNode;
  24. /////////////////////////////////////////////////////////////////////////////
  25. //++
  26. //
  27. // class CDnsDomain
  28. //
  29. // Description:
  30. // class defination for dns domain
  31. //
  32. //
  33. // Inheritance:
  34. //
  35. //
  36. //--
  37. /////////////////////////////////////////////////////////////////////////////
  38. class CDnsDomain : public CDnsBase
  39. {
  40. public:
  41. CDnsDomain();
  42. ~CDnsDomain();
  43. CDnsDomain(
  44. const WCHAR*,
  45. CWbemServices*
  46. );
  47. SCODE EnumInstance(
  48. long lFlags,
  49. IWbemContext * pCtx,
  50. IWbemObjectSink * pHandler);
  51. SCODE GetObject(
  52. CObjPath & ObjectPath,
  53. long lFlags,
  54. IWbemContext * pCtx,
  55. IWbemObjectSink * pHandler
  56. );
  57. SCODE ExecuteMethod(
  58. CObjPath & objPath,
  59. WCHAR * wzMethodName,
  60. long lFlag,
  61. IWbemClassObject * pInArgs,
  62. IWbemObjectSink * pHandler
  63. ) ;
  64. SCODE PutInstance(
  65. IWbemClassObject * pInst ,
  66. long lFlags,
  67. IWbemContext* pCtx ,
  68. IWbemObjectSink * pHandler
  69. );
  70. SCODE DeleteInstance(
  71. CObjPath & ObjectPath,
  72. long lFlags,
  73. IWbemContext * pCtx,
  74. IWbemObjectSink * pHandler
  75. );
  76. static CDnsBase* CreateThis(
  77. const WCHAR * wszName, //class name
  78. CWbemServices * pNamespace, //namespace
  79. const char * szType //str type id
  80. );
  81. static SCODE InstanceFilter(
  82. CDomainNode & ParentDomain,
  83. PVOID pFilter,
  84. CDnsRpcNode * pNode,
  85. IWbemClassObject * pClass,
  86. CWbemInstanceMgr & InstMgr
  87. );
  88. };