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.

232 lines
7.3 KiB

  1. // (c) 2000-2001 Microsoft Corporation. All rights reserved.
  2. #pragma autorecover
  3. #pragma classflags("forceupdate")
  4. Qualifier Description : ToSubClass Amended;
  5. Qualifier Values : ToSubClass Amended;
  6. Qualifier DisplayName : Amended;
  7. Qualifier BitValues:ToSubClass Amended ;
  8. Qualifier Aggregate : ToSubClass ;
  9. Qualifier ValueMap : ToSubClass ;
  10. Qualifier Aggregation : ToSubClass ;
  11. Qualifier ArrayType : ToSubClass ;
  12. Qualifier Association : ToInstance ToSubClass DisableOverride ;
  13. Qualifier BitMap : ToSubClass ;
  14. Qualifier CIM_Key : ToSubClass ;
  15. Qualifier CIMTYPE : ToSubClass ;
  16. Qualifier Deprecated : ToSubClass ;
  17. Qualifier Enumeration : ToSubClass ;
  18. Qualifier EnumPrivileges : ToSubClass ;
  19. Qualifier ImplementationSource : ToSubClass ;
  20. Qualifier Key : ToInstance ToSubClass DisableOverride ;
  21. Qualifier Locale : ToInstance ;
  22. Qualifier MappingStrings : ToSubClass ;
  23. Qualifier Max : ToSubClass ;
  24. Qualifier MaxLen : ToSubClass ;
  25. Qualifier Min : ToSubClass ;
  26. Qualifier ModelCorrespondence : ToSubClass ;
  27. Qualifier Not_Null : ToSubClass ;
  28. Qualifier Override : Restricted ;
  29. Qualifier Privileges : ToSubClass ;
  30. Qualifier Propagated : ToSubClass ;
  31. Qualifier provider : ToInstance ;
  32. Qualifier Range : ToSubClass ;
  33. Qualifier Read : ToSubClass ;
  34. Qualifier Schema : ToInstance ;
  35. Qualifier Singleton : ToSubClass ToInstance ;
  36. Qualifier SUBTYPE : ToSubClass ;
  37. Qualifier Units : ToSubClass ;
  38. Qualifier UUID : ToInstance ;
  39. Qualifier Volatile : ToSubClass ;
  40. Qualifier Weak : ToSubClass ;
  41. Qualifier Write : ToSubClass ;
  42. Qualifier WritePrivileges : ToSubClass ;
  43. #pragma namespace ("\\\\.\\Root\\CIMV2")
  44. instance of __Win32Provider as $DFSprov
  45. {
  46. Name = "DFSProvider";
  47. ClsId = "{7F72CC7A-74A0-45b4-909C-14FB8186DD7E}";
  48. HostingModel = "NetworkServiceHost";
  49. };
  50. instance of __InstanceProviderRegistration
  51. {
  52. Provider = $DFSprov;
  53. SupportsGet = TRUE;
  54. SupportsPut = TRUE;
  55. SupportsDelete = TRUE;
  56. SupportsEnumeration = TRUE;
  57. QuerySupportLevels = {"WQL:UnarySelect"};
  58. };
  59. instance of __MethodProviderRegistration
  60. {
  61. Provider = $DFSprov;
  62. };
  63. // cleanup of classes whose names were changed
  64. // after Whistler Beta 1
  65. #pragma deleteclass("Win32_DfsReplica", NOFAIL)
  66. #pragma deleteclass("Win32_DfsLink", NOFAIL)
  67. #pragma deleteclass("Win32_DfsLinkReplica", NOFAIL)
  68. [Description("The Win32_DfsNode class represents a root or a "
  69. "link of a domain based or a standalone "
  70. "distributed file system (DFS). "),
  71. dynamic, provider("DFSProvider"), SupportsCreate, CreateBy("Create"),
  72. SupportsDelete, DeleteBy("DeleteInstance"),
  73. SupportsUpdate, Locale (0x409)]
  74. class Win32_DfsNode : CIM_LogicalElement
  75. {
  76. [Description("The Name property is an identifier for the DFS node. It is "
  77. "same as the entry path of a node, based on the Universal Naming "
  78. "Convention. \n"
  79. "It can take one of the following two forms: "
  80. "\\\\DfsServerName\\ShareName\\PathToLink "
  81. "where - "
  82. "DfsServerName is the name of a server that hosts the DFS root volume, "
  83. "ShareName is the name of the share published on the host server, "
  84. "PathToLink is the path to the physical share. "
  85. "The PathToLink is applicable only to nodes that are DFS links."
  86. "\\\\DomainName\\FtDfsName\\PathToLink "
  87. "where - "
  88. "DomainName is the name of the domain that hosts the DFS root volume, "
  89. "FtDfsName is the name of the fault tolerant DFS root published "
  90. "in the domain directory service, "
  91. "PathToLink is the path to the physical share. "
  92. "The PathToLink is applicable only to nodes that are DFS links."),
  93. Override("Name"),
  94. key]
  95. string Name;
  96. [Description("The Root property indicates whether the node is a "
  97. "DFS root or a link. A value of True indicates that the node "
  98. "is a root.")]
  99. boolean Root;
  100. [Description ( "The State property indicates the status of the node."),
  101. Values { "Ok", "Inconsistent", "Online", "Offline"},
  102. ValueMap {"0", "1", "2", "3"}]
  103. uint32 State;
  104. [Override("The Description indicates a comment describing the node."),
  105. Write]
  106. string Description ;
  107. [Description("The Timeout property indicates the time in seconds for which the "
  108. "client caches the referral of this node."),
  109. Units("Seconds"),
  110. Write]
  111. uint32 Timeout;
  112. [Static, Constructor, Implemented,
  113. Description("The Create method is used to create a new instance "
  114. "of the Win32_DfsNode class.\n"
  115. "The method can return the following values: \n"
  116. "0 - Success. \n"
  117. "Other - For integer values other than those listed above, refer to "
  118. "Win32 error code documentation."),
  119. Values{ "Success", "Other" },
  120. ValueMap{ "0", ".." } ]
  121. uint32 Create(
  122. [In,
  123. Description("The DfsEntryPath parameter specifies the "
  124. "path of the DFS root.")]
  125. string DfsEntryPath,
  126. [In,
  127. Description("The ServerName parameter specifies the name "
  128. "of the server that hosts the share to which the link "
  129. "is associated. "
  130. "For example, in order to create a link "
  131. "associated to a share \"\\\\myserver\\myshare\", the ServerName "
  132. "parameter should be set to \"\\\\myserver\".")]
  133. string ServerName,
  134. [In,
  135. Description("The ShareName parameter specifies the name "
  136. "of the share to which the link is associated with. "
  137. "For example, in order to create a link "
  138. "associated to a share \"\\\\myserver\\myshare\", the ShareName "
  139. "parameter should be set to \"myshare\". ")]
  140. string ShareName,
  141. [In,
  142. Optional,
  143. Description("The Description parameter specifies a comment "
  144. "describing the node.")]
  145. string Description
  146. );
  147. };
  148. [Description("The DfsTarget class represents a target of a DFS link."),
  149. dynamic, SupportsCreate, CreateBy("PutInstance"), SupportsDelete,
  150. DeleteBy("DeleteInstance"), SupportsUpdate, provider("DFSProvider"),
  151. Locale (0x409)]
  152. class Win32_DfsTarget : CIM_LogicalElement
  153. {
  154. [Description("The LinkName indicates the entry path of the link "
  155. "to which this target belongs."),
  156. Key]
  157. string LinkName;
  158. [Description("The ServerName indicates the name of the server "
  159. "that the link references."),
  160. Key]
  161. string ServerName;
  162. [Description("The ShareName indicates the name of the share that "
  163. "the link references."),
  164. Key]
  165. string ShareName;
  166. [Description ( "The State property indicates the state of the target. "
  167. "The state is reported as a bit map, where each bit is interpretted "
  168. "as follows. Note that Offline and Online are mutually exclusive.\n"
  169. "Offline - The specified computer is offline or unavailable. \n"
  170. "Online - The specified computer is available. \n"
  171. "Active - The specified computer is to be made the "
  172. "active machine."),
  173. BitValues { "Offline", "Online", "Active"},
  174. BitMap {"0", "1", "2"}]
  175. uint32 State;
  176. };
  177. [Description("The Win32_DfsNodeTarget class associates a DFS node to one of "
  178. "its targets."),
  179. dynamic,
  180. Provider("DFSProvider"),
  181. Locale (0x409)]
  182. class Win32_DfsNodeTarget : CIM_Dependency
  183. {
  184. [Description("The Dependent property references a DFS node."),
  185. Override("Dependent"),
  186. Key]
  187. Win32_DfsNode REF Dependent;
  188. [Description("The Antecedent property references a target for "
  189. "a DFS node. A node that is a link has one or more targets. "
  190. "A node that is a root has one target."),
  191. Key,
  192. Override("Antecedent"),
  193. Min(1)]
  194. Win32_DfsTarget REF Antecedent;
  195. };