(file) Return to System_FilesystemServices.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim29

  1 karl  1.1 // ===================================================================
  2           // Title:  NAS File System Services
  3           // $State: Preliminary $
  4           // $Date: 2004/07/21 16:21:46 $
  5           // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/System_FilesystemServices.mof,v $
  6           // $Revision: 1.10 $
  7           // ===================================================================
  8           //#pragma inLine ("Includes/copyright.inc")
  9           // Copyright 1998-2004 Distributed Management Task Force, Inc. (DMTF).
 10           // All rights reserved.
 11           // DMTF is a not-for-profit association of industry members dedicated
 12           // to promoting enterprise and systems management and interoperability.
 13           // DMTF specifications and documents may be reproduced for uses
 14           // consistent with this purpose by members and non-members,
 15           // provided that correct attribution is given.
 16           // As DMTF specifications may be revised from time to time,
 17           // the particular version and release date should always be noted.
 18           // 
 19           // Implementation of certain elements of this standard or proposed
 20           // standard may be subject to third party patent rights, including
 21           // provisional patent rights (herein "patent rights"). DMTF makes
 22 karl  1.1 // no representations to users of the standard as to the existence
 23           // of such rights, and is not responsible to recognize, disclose, or
 24           // identify any or all such third party patent right, owners or
 25           // claimants, nor for any incomplete or inaccurate identification or
 26           // disclosure of such rights, owners or claimants. DMTF shall have no
 27           // liability to any party, in any manner or circumstance, under any
 28           // legal theory whatsoever, for failure to recognize, disclose, or
 29           // identify any such third party patent rights, or for such party's
 30           // reliance on the standard or incorporation thereof in its product,
 31           // protocols or testing procedures. DMTF shall have no liability to
 32           // any party implementing such standard, whether such implementation
 33           // is foreseeable or not, nor to any patent owner or claimant, and shall
 34           // have no liability or responsibility for costs or losses incurred if
 35           // a standard is withdrawn or modified after publication, and shall be
 36           // indemnified and held harmless by any party implementing the
 37           // standard from any and all claims of infringement by a patent owner
 38           // for such implementations.
 39           // 
 40           // For information about patents held by third-parties which have
 41           // notified the DMTF that, in their opinion, such patent may relate to
 42           // or impact implementations of DMTF standards, visit
 43 karl  1.1 // http://www.dmtf.org/about/policies/disclosures.php.
 44           //#pragma inLine
 45           // ===================================================================
 46           // Description: The NAS FileSystem Services Model defines the
 47           //              FileSystemConfigurationService class, its methods and
 48           //              associated settings and capabilities classes.
 49           //              These support creating FileSystems that reside on a
 50           //              single StorageExtent.
 51           // 
 52           //              The object classes below are listed in an order that
 53           //              avoids forward references. Required objects, defined
 54           //              by other working groups, are omitted.
 55           // ==================================================================
 56           // Change Log for v2.9 Preliminary Company Review
 57           // CR1446 - Update FileSystemConfigurationService,
 58           //          DefaultElementCapabilities, FileSystemSetting,
 59           //          FileSystemCapabilities, and added
 60           //          DefaultElementCapabilities.
 61           // CR1465 - Corrected compile errors and warnings.  
 62           //
 63           // ==================================================================
 64 karl  1.1 // 
 65           // Change Log for v2.9 Preliminary
 66           // CR1325 - Definitions needed to support methods to create or modify
 67           //          a FileSystem using a FileSystemConfigurationService.
 68           //          Created this file.
 69           // 
 70           // ==================================================================
 71           
 72           #pragma locale ("en_US")
 73           
 74           
 75           // ===================================================================
 76           // FileSystemConfigurationService
 77           // ===================================================================
 78           
 79              [Experimental, Version ( "2.8.1000" ), Description (
 80                  "This service allows the active management of a NAS Head or "
 81                  "other FileSystem Server. It allows jobs to be started for the "
 82                  "creation, modification, and deletion of FileSystems (that "
 83                  "derive from CIM_LocalFileSystem).")]
 84           class CIM_FileSystemConfigurationService : CIM_Service {
 85 karl  1.1       [Description (
 86                     "Start a job to create a FileSystem on a StorageExtent. If "
 87                     "the operation completes successfully and did not require a "
 88                     "long-running ConcreteJob, it will return 0. If 4096/0x1000 "
 89                     "is returned, a ConcreteJob will be started to create the "
 90                     "element. A Reference to the ConcreteJob will be returned in "
 91                     "the output parameter Job. If any other value is returned, "
 92                     "the job will not be started, and no action will be taken. \n"
 93                     "This method MUST return a CIM_Error representing that a "
 94                     "single named property of a setting (or other) parameter "
 95                     "(either reference or embedded object) has an invalid value "
 96                     "or that an invalid combination of named properties of a "
 97                     "setting (or other) parameter (either reference or embedded "
 98                     "object) has been requested. \n"
 99                     "The parameter TheElement will contain a Reference to the "
100                     "FileSystem if this operation completed successfully. \n"
101                     "The StorageExtent to use is specified by the InExtent "
102                     "parameter. If this is NULL, a default StorageExtent will be "
103                     "created in a vendor-specific way and used. One way to "
104                     "create the default StorageExtent is to use one of the "
105                     "canned settings supported by the "
106 karl  1.1           "StorageConfigurationService hosted by the host hosting the "
107                     "FileSystemConfigurationService. \n"
108                     "The desired settings for the FileSystem are specified by "
109                     "the Goal parameter. Goal is an element of class "
110                     "CIM_FileSystemSetting, or a derived class, encoded as a "
111                     "string-valued embedded object parameter; this allows the "
112                     "client to specify the properties desired for the file "
113                     "system. The Goal parameter includes information that can be "
114                     "used by the vendor to compute the size of the FileSystem. "
115                     "If the StorageExtent specified here cannot support the goal "
116                     "size, an appropriate error value will be returned, and no "
117                     "action will be taken. \n"
118                     "A ResidesOnExtent association is created between the "
119                     "created FileSystem and the StorageExtent used for it."), 
120                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "..", "4096",
121                     "4098..32767", "32768..65535" }, 
122                  Values { "Job Completed with No Error", "Not Supported",
123                     "Unknown", "Timeout", "Failed", "Invalid Parameter",
124                     "StorageExtent is not big enough to satisfy the request.",
125                     "StorageExtent specified by default cannot be created.",
126                     "DMTF Reserved", "Method Parameters Checked - Job Started",
127 karl  1.1           "Method Reserved", "Vendor Specific" }]
128              uint32 CreateFileSystem( 
129                    [IN, Description (
130                        "A end user relevant name for the FileSystem being "
131                        "created. If NULL, a system-supplied default name can be "
132                        "used. The value will be stored in the 'ElementName' "
133                        "property for the created element.")]
134                 string ElementName, 
135                    [IN ( false ), OUT, Description (
136                        "Reference to the job (may be null if job completed).")]
137                 CIM_ConcreteJob REF Job, 
138                    [IN, Description (
139                        "The requirements for the FileSystem element to maintain. "
140                        "This is an element of class CIM_FileSystemSetting, or a "
141                        "derived class, encoded as a string-valued embedded "
142                        "instance parameter; this allows the client to specify "
143                        "the properties desired for the file system. If NULL or "
144                        "the empty string, the FileSystemConfigurationService "
145                        "will use a vendor-specific default Goal obtained by "
146                        "using the FileSystemCapabilities element specified by "
147                        "the DefaultElementCapabilities association to obtain a "
148 karl  1.1              "default FileSystemSetting element."), 
149                     EmbeddedInstance ( "CIM_FileSystemSetting" )]
150                 string Goal, 
151                    [IN, Description (
152                        "The StorageExtent on which the created FileSystem will "
153                        "reside. If this is NULL, a default StorageExtent will be "
154                        "created in a vendor-specific way and used. One way to "
155                        "create the default StorageExtent is to use one of the "
156                        "default settings supported by the "
157                        "StorageConfigurationService on the same hosting "
158                        "ComputerSystem as the FileSystemConfigurationService.")]
159                 CIM_StorageExtent REF InExtent, 
160                    [IN, OUT, Description (
161                        "The newly created FileSystem.")]
162                 CIM_FileSystem REF TheElement); 
163           
164                 [Description (
165                     "Start a job to modify a previously created FileSystem. If "
166                     "the operation completes successfully and did not require a "
167                     "long-running ConcreteJob, it will return 0. If 4096/0x1000 "
168                     "is returned, a ConcreteJob will be started to modify the "
169 karl  1.1           "element. A Reference to the ConcreteJob will be returned in "
170                     "the output parameter Job. If any other value is returned, "
171                     "either the job will not be started, or if started, no "
172                     "action will be taken. \n"
173                     "This method MUST return a CIM_Error representing that a "
174                     "single named property of a setting (or other) parameter "
175                     "(either reference or embedded object) has an invalid value "
176                     "or that an invalid combination of named properties of a "
177                     "setting (or other) parameter (either reference or embedded "
178                     "object) has been requested. \n"
179                     "The parameter TheElement specifies the FileSystem to be "
180                     "modified. This element MUST be associated via "
181                     "ElementSettingData with a FileSystemSetting which is in "
182                     "turn associated via SettingGeneratedByCapabilities to a "
183                     "FileSystemCapabilities supported by this "
184                     "FileSystemConfigurationService. \n"
185                     "The desired settings for the FileSystem are specified by "
186                     "the Goal parameter. Goal is an element of class "
187                     "CIM_FileSystemSetting, or a derived class, encoded as a "
188                     "string-valued embedded instance parameter; this allows the "
189                     "client to specify the properties desired for the file "
190 karl  1.1           "system. The Goal parameter includes information that can be "
191                     "used by the vendor to compute the required size of the "
192                     "FileSystem. If the operation would result in a change in "
193                     "the size of the file system, the StorageExtent identified "
194                     "by the ResidesOnExtent association will be used to "
195                     "determine how to implement the change. If the StorageExtent "
196                     "cannot be expanded to support the goal size, an appropriate "
197                     "error value will be returned, and no action will be taken. "
198                     "If the operation succeeds, the ResidesOnExtent association "
199                     "might reference a different StorageExtent."), 
200                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "..", "4096",
201                     "4098..32767", "32768..65535" }, 
202                  Values { "Job Completed with No Error", "Not Supported",
203                     "Unknown", "Timeout", "Failed", "Invalid Parameter",
204                     "FileSystem In Use, cannot Modify",
205                     "Cannot satisfy new Goal.", "DMTF Reserved",
206                     "Method Parameters Checked - Job Started", "Method Reserved",
207                     "Vendor Specific" }]
208              uint32 ModifyFileSystem( 
209                    [IN, Description (
210                        "A end user relevant name for the FileSystem being "
211 karl  1.1              "modified. If NULL, then the name will not be changed. If "
212                        "not NULL, this parameter will supply a new name for the "
213                        "FileSystem element.")]
214                 string ElementName, 
215                    [IN ( false ), OUT, Description (
216                        "Reference to the job (may be null if job completed).")]
217                 CIM_ConcreteJob REF Job, 
218                    [IN, Description (
219                        "The requirements for the FileSystem element to maintain. "
220                        "This is an element of class CIM_FileSystemSetting, or a "
221                        "derived class, encoded as a string-valued embedded "
222                        "instance parameter; this allows the client to specify "
223                        "the properties desired for the file system. If NULL or "
224                        "the empty string, the FileSystem service attributes will "
225                        "not be changed. If not NULL, this parameter will supply "
226                        "new settings that replace or are merged with the current "
227                        "settings of the FileSystem element."), 
228                     EmbeddedInstance ( "CIM_FileSystemSetting" )]
229                 string Goal, 
230                    [IN, Description (
231                        "The FileSystem element to modify.")]
232 karl  1.1       CIM_FileSystem REF TheElement, 
233                    [IN, Description (
234                        "An enumerated integer that specifies the action to take "
235                        "if the FileSystem is still in use when this request is "
236                        "made. This option is only relevant if the FileSystem "
237                        "must be made unavailable while the request is being "
238                        "executed."), 
239                     ValueMap { "2", "3", "4", "..", "0x1000..0xFFFF" }, 
240                     Values { "Do Not Execute Request",
241                        "Wait for specified time, "
242                        "then Execute Request Immediately",
243                        "Try to Quiesce for specified time, then Execute Request "
244                         "Immediately", "DMTF Reserved", "Vendor Defined" }]
245                 uint16 InUseOptions, 
246                    [IN, Description (
247                        "An integer that indicates the time (in seconds) that the "
248                        "provider must wait before performing the request on this "
249                        "FileSystem. If WaitTime is not zero, the method will "
250                        "create a job, if supported by the provider, and return "
251                        "immediately. If the provider does not support "
252                        "asynchronous jobs, there is a possibility that the "
253 karl  1.1              "client could time-out before the job is completed. \n"
254                        "The combination of InUseOptions = '4' and WaitTime ='0' "
255                        "(the default) is interpreted as 'Wait (forever) until "
256                        "Quiescence, then Execute Request' and will be performed "
257                        "asynchronously if possible."), 
258                     Units ( "seconds" )]
259                 uint32 WaitTime); 
260           
261                 [Description (
262                     "Start a job to delete a FileSystem. If the FileSystem "
263                     "cannot be deleted, no action will be taken, and the Return "
264                     "Value will be 4097/0x1001. If the method completed "
265                     "successfully and did not require a long-running "
266                     "ConcreteJob, it will return 0. If 4096/0x1000 is returned, "
267                     "a ConcreteJob will be started to delete the FileSystem. A "
268                     "Reference to the ConcreteJob will be returned in the output "
269                     "parameter Job."), 
270                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "..", "0x1000",
271                     "0x1001..0x7FFF", "0x8000.." }, 
272                  Values { "Job Completed with No Error", "Not Supported",
273                     "Unknown", "Timeout", "Failed, Unspecified Reasons",
274 karl  1.1           "Invalid Parameter", "FileSystem in use, Failed",
275                     "DMTF Reserved", "Method Parameters Checked - Job Started",
276                     "Method Reserved", "Vendor Specific" }]
277              uint32 DeleteFileSystem( 
278                    [IN ( false ), OUT, Description (
279                        "Reference to the job (may be null if job completed).")]
280                 CIM_ConcreteJob REF Job, 
281                    [IN, Description (
282                        "An element or association that uniquely identifies the "
283                        "FileSystem to be deleted.")]
284                 CIM_ManagedElement REF TheFileSystem, 
285                    [IN, Description (
286                        "An enumerated integer that specifies the action to take "
287                        "if the FileSystem is still in use when this request is "
288                        "made."), 
289                     ValueMap { "2", "3", "4", "..", "0x1000..0xFFFF" }, 
290                     Values { "Do Not Delete",
291                        "Wait for specified time, then Delete Immediately",
292                        "Attempt Quiescence for specified time, "
293                        "then Delete Immediately", "DMTF Reserved",
294                        "Vendor Defined" }]
295 karl  1.1       uint16 InUseOptions, 
296                    [IN, Description (
297                        "An integer that indicates the time (in seconds) that the "
298                        "provider must wait before deleting this FileSystem. If "
299                        "WaitTime is not zero, the method will create a job, if "
300                        "supported by the provider, and return immediately. If "
301                        "the provider does not support asynchronous jobs, there "
302                        "is a possibility that the client could time-out before "
303                        "the job is completed. \n"
304                        "The combination of InUseOptions = '4' and WaitTime ='0' "
305                        "(the default) is interpreted as 'Wait (forever) until "
306                        "Quiescence, then Delete Filesystem' and will be "
307                        "performed asynchronously if possible."), 
308                     Units ( "seconds" )]
309                 uint32 WaitTime); 
310           };
311           
312           // ===================================================================
313           // FileSystemConfigurationCapabilities
314           // ===================================================================
315              [Experimental, Version ( "2.8.1000" ), Description (
316 karl  1.1        "FileSystemConfigurationCapabilities specifies the capability "
317                  "of a FileSystemConfigurationService to support the specified "
318                  "methods.")]
319           class CIM_FileSystemConfigurationCapabilities : CIM_Capabilities {
320           
321                 [Description (
322                     "An array of enumerated values that indicates the set of "
323                     "actual file system implementation types that this "
324                     "FileSystemConfigurationService can support in its "
325                     "Capabilities. For each file system type listed here, there "
326                     "MUST be at least one FileSystemCapabilities element."), 
327                  ValueMap { "0", "2", "3", "4", "5", "6", "7", "8", "9", "10",
328                     "11", "12", "13", "..", "0x8000.." }, 
329                  Values { "Unknown", "UFS", "HFS", "FAT", "FAT16", "FAT32",
330                     "NTFS4", "NTFS5", "XFS", "AFS", "EXT2", "EXT3", "REISERFS",
331                     "DMTF Reserved", "Vendor Defined" }, Read]
332              uint16 SupportedActualFileSystemTypes[];
333           
334                 [Description (
335                     "An array of methods of this Service that are supported as "
336                     "synchronous methods."), 
337 karl  1.1        ValueMap { "2", "3", "4", "5", "6", "..", "0x8000.." }, 
338                  Values { "CreateFileSystem", "DeleteFileSystem",
339                     "ModifyFileSystem", "CreateGoal", "GetRequiredStorageSize",
340                     "DMTF Reserved", "Vendor Defined" }, Read]
341              uint16 SupportedSynchronousMethods[];
342           
343                 [Description (
344                     "An array of methods of this Service that are supported as "
345                     "asynchronous methods."), 
346                  ValueMap { "2", "3", "4", "5", "6", "..", "0x8000.." }, 
347                  Values { "CreateFileSystem", "DeleteFileSystem",
348                     "ModifyFileSystem", "CreateGoal", "GetRequiredStorageSize",
349                     "DMTF Reserved", "Vendor Defined" }, Read]
350              uint16 SupportedAsynchronousMethods[];
351           
352                 [Description (
353                     "An enumerated value that indicates the state of "
354                     "availability in which the Service can create the file "
355                     "system. The choices include 'Mounted' and 'Unmounted'. If "
356                     "'Mounted', the mount-point will be at a vendor-specific "
357                     "default LogicalFile, and a MountedElement association will "
358 karl  1.1           "be surfaced."), 
359                  ValueMap { "0", "2", "3", "..", "0x8000.." }, 
360                  Values { "Unknown", "Mounted", "Unmounted", "DMTF Reserved",
361                     "Vendor Defined" }, Read]
362              uint16 InitialAvailability;
363           };
364           
365           // ===================================================================
366           // SettingAssociatedToCapabilities
367           // ===================================================================
368              [Association, Experimental, Version ( "2.8.1000" ), Description (
369                  "SettingAssociatedToCapabilities represents the association "
370                  "between Capabilities and supported SettingData data.")]
371           class CIM_SettingAssociatedToCapabilities {
372           
373                 [Key, Description (
374                     "The Capabilities element that supports the SettingData.")]
375              CIM_Capabilities REF Capabilities;
376           
377                 [Key, Description (
378                     "The SettingData object supported by the Capabilities.")]
379 karl  1.1    CIM_SettingData REF SettingData;
380           };
381           
382           // ===================================================================
383           // SettingGeneratedByCapabilities
384           // ===================================================================
385              [Association, Experimental, Version ( "2.8.1000" ), Description (
386                  "SettingGeneratedByCapabilities represents the association "
387                  "between a Capabilities element and a SettingData element that "
388                  "was created with support from that Capabilities element.")]
389           class CIM_SettingGeneratedByCapabilities : CIM_Dependency {
390           
391                 [Key, Override ( "Antecedent" ), Max ( 1 ), Description (
392                     "The Capabilities element that originated this Dependent.")]
393              CIM_Capabilities REF Antecedent;
394           
395                 [Key, Override ( "Dependent" ), Description (
396                     "The SettingData object that was generated by the "
397                     "Capabilities element.")]
398              CIM_SettingData REF Dependent;
399           };
400 karl  1.1 
401           // ===================================================================
402           // FileSystemSetting
403           // ===================================================================
404              [Experimental, Version ( "2.8.1000" ), Description (
405                  "The FileSystemSetting describes the attribute values set when "
406                  "creating a FileSystem by a FileSystemConfigurationService. "
407                  "These settings can be associated via the ElementSettingData "
408                  "association with the created FileSystem. If the setting is "
409                  "associated via SettingAssociatedToCapabilities to a "
410                  "FileSystemCapabilities, it is one of the canned settings "
411                  "supported by this capabilities instance. A setting can also be "
412                  "an embedded instance parameter to a method (for instance, when "
413                  "used as a Goal parameter). \n"
414                  "A NULL value for a property in a canned setting indicates "
415                  "support for a vendor-specific default. A NULL value for a "
416                  "property when the setting is used as a Goal parameter to a "
417                  "method indicates that the client does not care what value that "
418                  "property will have on creation and will accept any "
419                  "vendor-supplied default. When used with a FileSystem, a NULL "
420                  "value for a property must be interpreted as \"Unknown\". The "
421 karl  1.1        "ActualFileSystemType property cannot have a default value in "
422                  "any context. If this Setting is associated with a "
423                  "FileSystemCapabilities element via "
424                  "SettingAssociatedToCapabilities, the value of "
425                  "ActualFileSystemType in the Setting and the Capabilities MUST "
426                  "match. \n"
427                  "This class also supports persistence and recoverability of a "
428                  "FileSystem and its contained elements as defined in CIM 2.8 "
429                  "for the use of DatabaseStorageArea.")]
430           class CIM_FileSystemSetting : CIM_SettingData {
431           
432                 [Description (
433                     "An enumerated value that indicates the file system "
434                     "implementation type supported by this Setting. This "
435                     "property MUST exist and have a value."), 
436                  ValueMap { "0", "2", "3", "4", "5", "6", "7", "8", "9", "10",
437                     "11", "12", "13", "..", "0x8000.." }, 
438                  Values { "Unknown", "UFS", "HFS", "FAT", "FAT16", "FAT32",
439                     "NTFS4", "NTFS5", "XFS", "AFS", "EXT2", "EXT3", "REISERFS",
440                     "DMTF Reserved", "Vendor Defined" }, Read, 
441                  ModelCorrespondence { 
442 karl  1.1           "CIM_FileSystemCapabilities.ActualFileSystemType" }]
443              uint16 ActualFileSystemType = 0;
444           
445                 [Description (
446                     "An enumerated value that specifies if the FileSystem "
447                     "supports or enforces sharing of data extents between "
448                     "objects."), 
449                  ValueMap { "0", "1", "2", "3", "..", "0x8000.." }, 
450                  Values { "Unknown", "No Sharing", "Sharing Possible/Optional",
451                     "Sharing Enforced", "DMTF Reserved", "Vendor Defined" }, Read]
452              uint16 DataExtentsSharing = 0;
453           
454                 [Description (
455                     "An enumerated value that specifies if this FileSystem can "
456                     "be a target for synchronization with or mirror of another "
457                     "FileSystem, or if it cannot be a target."), 
458                  ValueMap { "0", "1", "2", "3", "4", "5", "..", "0x8000.." }, 
459                  Values { "Unknown", "Can be a Primary only",
460                     "Can be a Mirror only", "Can be a Synchronization Target",
461                     "Can be a Backup Target", "Write Once", "DMTF Reserved",
462                     "Vendor Defined" }, Read]
463 karl  1.1    uint16 CopyTarget = 0;
464           
465                 [Description (
466                     "An enumerated value that specifies how this FileSystem "
467                     "supports the case of characters in the Filename. Note that "
468                     "the host and the service may support multiple conflicting "
469                     "features, but each FileSystem must be configured with only "
470                     "one of the supported features."), 
471                  ValueMap { "0", "1", "2", "3", "4", "5", "..", "0x8000.." }, 
472                  Values { "Unknown", "Case-sensitive",
473                     "Case-forced to upper case", "Case-forced to lower-case",
474                     "Case-indifferent but lost",
475                     "Case-indifferent but preserved", "DMTF Reserved",
476                     "Vendor Defined" }, Read]
477              uint16 FilenameCaseAttributes = 0;
478           
479                 [Description (
480                     "An array of enumerated values that specifies the set of "
481                     "object types that this FileSystem supports. This array is "
482                     "associated with a number of correspondingly indexed "
483                     "properties that specify the size and number of such "
484 karl  1.1           "objects. \n"
485                     "When used as a goal, the client needs to specify only the "
486                     "subset of objects that they wish to specify; when used in a "
487                     "Setting associated with the FileSystem, this should contain "
488                     "all the types that the provider knows about; when used in a "
489                     "Setting associated with a Capabilities, this may only "
490                     "contain the types that the client can modify."), 
491                  ValueMap { "2", "3", "4", "5", "6", "7", "..", "0x8000.." }, 
492                  Values { "inodes", "files", "directories", "links", "devices",
493                     "files/directories", "DMTF Reserved", "Vendor Defined" },
494                  Read, ArrayType ( "Indexed" ), 
495                  ModelCorrespondence { "CIM_FileSystemSetting.NumberOfObjects",
496                     "CIM_FileSystemSetting.NumberOfObjectsMax",
497                     "CIM_FileSystemSetting.NumberOfObjectsMin",
498                     "CIM_FileSystemSetting.ObjectSize",
499                     "CIM_FileSystemSetting.ObjectSizeMax",
500                     "CIM_FileSystemSetting.ObjectSizeMin" }]
501              uint16 ObjectTypes[];
502           
503                 [Description (
504                     "An array of integers that specifies the minimum number of "
505 karl  1.1           "objects (corresponding to the entry in the ObjectTypes "
506                     "array) that this FileSystem MUST be able to contain. A "
507                     "value of 0 implies that there is no specific minimum "
508                     "associated with this setting."), 
509                  Read, ArrayType ( "Indexed" ), 
510                  ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
511              uint64 NumberOfObjectsMin[];
512           
513                 [Description (
514                     "An array of integers that specifies the maximum number of "
515                     "objects (corresponding to the entry in the ObjectTypes "
516                     "array) that this FileSystem MUST be able to contain. A "
517                     "value of 0 implies that there is no specific maximum "
518                     "associated with this setting."), 
519                  Read, ArrayType ( "Indexed" ), 
520                  ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
521              uint64 NumberOfObjectsMax[] ;
522           
523                 [Description (
524                     "An array of integers that specifies the number of objects "
525                     "(corresponding to the entry in the ObjectTypes array) that "
526 karl  1.1           "this FileSystem will \"normally\" contain. A value of 0 "
527                     "implies that there is no specific number associated with "
528                     "this setting. When the Setting is associated with a "
529                     "FileSystemCapabilities element, this is the default; When "
530                     "the Setting is associated with a FileSystem element, this "
531                     "is the expected value; When the Setting is used as an "
532                     "embedded parameter to a method this is the goal."), 
533                  Read, ArrayType ( "Indexed" ), 
534                  ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
535              uint64 NumberOfObjects[];
536           
537                 [Description (
538                     "An array of integers that specifies the size of objects "
539                     "(corresponding to the entry in the ObjectTypes array) that "
540                     "this FileSystem will \"normally\" contain. A value of 0 "
541                     "implies that there is no specific number associated with "
542                     "this setting. When the Setting is associated with a "
543                     "FileSystemCapabilities element, this is the default; When "
544                     "the Setting is associated with a FileSystem element, this "
545                     "is the expected value; When the Setting is used as an "
546                     "embedded parameter to a method this is the goal."), 
547 karl  1.1        Units ( "Bytes" ), Read, ArrayType ( "Indexed" ), 
548                  ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
549              uint64 ObjectSize[];
550           
551                 [Description (
552                     "An array of integers that specifies the minimum size of "
553                     "objects (corresponding to the entry in the ObjectTypes "
554                     "array) that this FileSystem will \"normally\" contain. A "
555                     "value of 0 implies that there is no specific minimum "
556                     "associated with this setting."), 
557                  Units ( "Bytes" ), Read, ArrayType ( "Indexed" ), 
558                  ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
559              uint64 ObjectSizeMin[];
560           
561                 [Description (
562                     "An array of integers that specifies the maximum size of "
563                     "objects (corresponding to the entry in the ObjectTypes "
564                     "array) that this FileSystem will \"normally\" contain. A "
565                     "value of 0 implies that there is no specific maximum "
566                     "associated with this setting."), 
567                  Units ( "Bytes" ), Read, ArrayType ( "Indexed" ), 
568 karl  1.1        ModelCorrespondence { "CIM_FileSystemSetting.ObjectTypes" }]
569              uint64 ObjectSizeMax[];
570           
571                 [Description (
572                     "An array of enumerated integers representing the filename "
573                     "stream formats that the file system can support for access. "
574                     "The interpretation of these stream formats can be specific "
575                     "to vendors, or provided by some standard. But even within "
576                     "those constraints, the interpretation could be "
577                     "locale-specific or version-specific. For instance, "
578                     "Bytestream is locale-specific and is interpreted as ASCII "
579                     "for NFS v2 and v3 but UTF-8 in NFS v4. This additional "
580                     "information will normally be provided in the setting for "
581                     "the protocol used to access an element of this file system."), 
582                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "..",
583                     "0x8000.." }, 
584                  Values { "ASCII", "WideChar", "MBCS", "UTF-8", "UNICODE UCS-16",
585                     "UNICODE UCS-32", "CIFS Client-interpreted", "Bytestream",
586                     "DMTF Reserved", "Vendor Defined" }, Read,
587                     ArrayType ( "Indexed" )]
588              uint16 FilenameStreamFormats[] ;
589 karl  1.1 
590                 [Description (
591                     "An array of enumerated values that specify the filename "
592                     "formats supported on this FileSystem for naming files. Some "
593                     "common formats are: \n"
594                     "a) DOS 8.3 \n"
595                     "b) VMS 'name.extension;version' where the extension "
596                     "specifies a file type \n"
597                     "c) Unix name (file type is not specified in the name) \n"
598                     "d) Windows 'name{.ext}*' where any of the exts can specify "
599                     "a file type \n"
600                     "For each entry in this array there is an associated maximum "
601                     "length for the name and an associated reserved set of "
602                     "characters. \n"
603                     "The interpretation of the maximum length of the name as "
604                     "well as the FilenameReservedCharacterSet string is "
605                     "vendor-specific."), 
606                  ValueMap { "1", "2", "3", "4", "..", "0x8000.." }, 
607                  Values { "DOS8.3", "Unix", "VMS", "Windows LongNames",
608                     "DMTF Reserved", "Vendor Defined" }, Read,
609                     ArrayType ( "Indexed" ), 
610 karl  1.1        ModelCorrespondence { "CIM_FileSystemSetting.FilenameLengthMax",
611                     "CIM_FileSystemSetting.FilenameReservedCharacterSet" }]
612              uint16 FilenameFormats[] ;
613           
614                 [Description (
615                     "An array of integers that specify the maximum number of "
616                     "characters in a filename corresponding to an entry in the "
617                     "FilenameFormats property. \n"
618                     "An entry of '0xFFFF' (the largest 16-bit integer) is "
619                     "interpreted as an indefinite length."), 
620                  Read, ArrayType ( "Indexed" ), 
621                  ModelCorrespondence { "CIM_FileSystemSetting.FilenameFormats" }]
622              uint16 FilenameLengthMax[] ;
623           
624                 [Description (
625                     "An array of strings that specifies the characters that may "
626                     "not appear in the name of any file contained by this "
627                     "FileSystem corresponding to the entry in the "
628                     "FilenameFormats property. \n"
629                     "Note: It is not clear exactly how this works with the "
630                     "FilenameStreamFormats property above, since the format "
631 karl  1.1           "implicitly specifies the set of allowed characters."), 
632                  Read, ArrayType ( "Indexed" ), 
633                  ModelCorrespondence { "CIM_FileSystemSetting.FilenameFormats" }]
634              String FilenameReservedCharacterSet[];
635           
636                 [Description (
637                     "An array of enumerated values that represent the locking "
638                     "semantics that the FileSystem can support for controlled "
639                     "access. A file system can support more than one locking "
640                     "model. Just because a file system supports more than one "
641                     "model does not imply that it supports them simultaneously "
642                     "for an element."), 
643                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "..",
644                     "0x8000.." }, 
645                  Values { "NLM/NFSv3", "NFSv4 Share Reservations",
646                     "NFSv4 Byte-range locking", "NFSv4 Delegations",
647                     "CIFS Sharing locks", "CIFS Byte-range locks",
648                     "CIFS Exclusive/Batch oplocks", "CIFS Level II oplocks",
649                     "DMTF Reserved", "Vendor Defined" }, Read,
650                     ArrayType ( "Indexed" )]
651              uint16 SupportedLockingSemantics[] ;
652 karl  1.1 
653                 [Description (
654                     "An array of enumerated values that represent the "
655                     "authorization protocols that the FileSystem will support "
656                     "for access to objects by users, groups, accounts, etc. A "
657                     "FileSystem can support more than one authorization "
658                     "protocol."), 
659                  ValueMap { "1", "2", "3", "4", "5", "..", "0x8000.." }, 
660                  Values { "Posix Permissions", "Posix ACLs", "NFSv4 ACLs",
661                     "NTFS4", "NTFS5", "DMTF Reserved", "Vendor Defined" }, Read,
662                  ArrayType ( "Indexed" )]
663              uint16 SupportedAuthorizationProtocols[] ;
664           
665                 [Description (
666                     "An array of enumerated values that represent the "
667                     "authentication protocols that the FileSystem will support "
668                     "for access to objects by users, groups, accounts, etc.. \n"
669                     "An entry of '0' is not allowed. \n"
670                     "A FileSystem can support more than one authentication "
671                     "protocol."), 
672                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
673 karl  1.1           "11", "..", "0x8000.." }, 
674                  Values { "AUTH_NONE", "AUTH_SYS", "AUTH_DH", "AUTH_KRB4",
675                     "AUTH_KRB5", "RPCSEC_GSS LIPKEY", "RPCSEC_GSS SPKM-3",
676                     "RPCSEC_GSS Challenge-Response", "NTLM v1", "NTLM v2",
677                     "Plain Text", "DMTF Reserved", "Vendor Defined" }, Read,
678                  ArrayType ( "Indexed" )]
679              uint16 SupportedAuthenticationProtocols[];
680           
681                 [Description (
682                     "An array of enumerated values representing the persistence "
683                     "attributes of the FileSystem. A value of \"Persistent\" "
684                     "indicates that the FileSystem supports persistence, can be "
685                     "preserved through an orderly shutdown and could be "
686                     "protected. A value of \"Temporary\" indicates that the "
687                     "FileSystem supports non-persistence, may not be protected "
688                     "and may not survive a shutdown. A value of \"External\" "
689                     "indicates that the FileSystem could controlled outside of "
690                     "the operating environment and may need to be protected by "
691                     "specialized means. A value of \"Other\" is provided to "
692                     "allow for additional persistence types, to be described in "
693                     "the corresponding entry of the OtherPersistenceTypes "
694 karl  1.1           "property, and is expected to be rarely, if ever, used."), 
695                  ValueMap { "0", "1", "2", "3", "4", "5.." }, 
696                  Values { "Unknown", "Other", "Persistent", "Temporary",
697                     "External", "DMTF Reserved" }, ArrayType ( "Indexed" ), 
698                  ModelCorrespondence { 
699                     "CIM_FileSystemSetting.OtherPersistenceTypes",
700                     "CIM_FileSystem.PersistenceType" }]
701              uint16 PersistenceTypes[];
702           
703                 [Description (
704                     "An array of strings describing the persistence attributes "
705                     "where the corresponding entry in the PersistenceTypes "
706                     "property has a value of \"Other\". This value is ignored in "
707                     "all other cases."), 
708                  ArrayType ( "Indexed" ), 
709                  ModelCorrespondence { "CIM_FileSystemSetting.PersistenceTypes",
710                     "CIM_FileSystem.OtherPersistenceType" }]
711              string OtherPersistenceTypes[];
712           };
713           
714           
715 karl  1.1 // ===================================================================
716           // FileSystemCapabilities
717           // ===================================================================
718              [Version ( "2.8.1000" ), Description (
719                  "FileSystemCapabilities specifies the combination of properties "
720                  "that a FileSystemService can support when creating or "
721                  "maintaining FileSystems. Each supported combination of "
722                  "properties is specified by a FileSystemSetting that is "
723                  "associated with the FileSystemCapabilities element via "
724                  "ElementSettingData. \n"
725                  "A FileSystemCapabilities element specifies the properties "
726                  "supported when using it. \n"
727                  "This class provides a CreateGoal method that can be used to "
728                  "create a FileSystemSetting element that can be used as a goal "
729                  "for creating or modifying a filesystem. This class also "
730                  "supports persistence and recoverability of a FileSystem and "
731                  "its contained elements as defined in CIM 2.8 for the use of "
732                  "DatabaseStorageArea.")]
733           class CIM_FileSystemCapabilities : CIM_Capabilities {
734           
735                 [Deprecated { "CIM_FileSystemSetting.PersistenceTypes" }, 
736 karl  1.1        Description (
737                     "An array of enumerated values representing the persistence "
738                     "capabilities of the FileSystem. A value of \"Persistent\" "
739                     "indicates that the FileSystem supports persistence, can be "
740                     "preserved through an orderly shutdown and could be "
741                     "protected. A value of \"Temporary\" indicates that the "
742                     "FileSystem supports non-persistence, may not be protected "
743                     "and may not survive a shutdown. A value of \"External\" "
744                     "indicates that the FileSystem could controlled outside of "
745                     "the operating environment and may need to be protected by "
746                     "specialized means. A value of \"Other\" is provided to "
747                     "allow for additional persistence types, to be described in "
748                     "the OtherPersistenceType attribute, and is expected to be "
749                     "rarely, if ever, used."), 
750                  ValueMap { "1", "2", "3", "4" }, 
751                  Values { "Other", "Persistent", "Temporary", "External" },
752                  ArrayType ( "Indexed" ), 
753                  ModelCorrespondence { 
754                     "CIM_FileSystemCapabilities.SupportedPersistenceTypes",
755                     "CIM_FileSystem.PersistenceType" }]
756              uint16 SupportedPersistenceTypes[];
757 karl  1.1 
758                 [Deprecated { "CIM_FileSystemSetting.OtherPersistenceTypes" }, 
759                  Description (
760                     "An array of strings describing the persistence capabilities "
761                     "where the corresponding entry in SupportedPersistenceTypes "
762                     "has a value of \"Other\". This value is ignored in all "
763                     "other cases."), 
764                  ArrayType ( "Indexed" ), 
765                  ModelCorrespondence { 
766                     "CIM_FileSystemCapabilities.SupportedPersistenceTypes",
767                     "CIM_FileSystem.OtherPersistenceType" }]
768              string SupportedOtherPersistenceTypes[];
769           
770                 [Experimental, Description (
771                     "An enumerated value that indicates the file system "
772                     "implementation type supported by this Capabilities."), 
773                  ValueMap { "0", "2", "3", "4", "5", "6", "7", "8", "9", "10",
774                     "11", "12", "13", "..", "0x8000.." }, 
775                  Values { "Unknown", "UFS", "HFS", "FAT", "FAT16", "FAT32",
776                     "NTFS4", "NTFS5", "XFS", "AFS", "EXT2", "EXT3", "REISERFS",
777                     "DMTF Reserved", "Vendor Defined" }, Read, 
778 karl  1.1        ModelCorrespondence { 
779                     "CIM_FileSystemSetting.ActualFileSystemType" }]
780              uint16 ActualFileSystemType = 0;
781           
782                 [Experimental, Description (
783                     "An array of property names of the Setting that this "
784                     "Capabilities element supports. The Object-related "
785                     "parameters are not specified because they must always be "
786                     "supported even if not used."), 
787                  ValueMap { "2", "3", "4", "5", "6", "7", "8", "9", "10", "..",
788                     "0x8000.." }, 
789                  Values { "DataExtentsSharing", "CopyTarget",
790                     "FilenameCaseAttributes", "FilenameStreamFormats",
791                     "FilenameFormats", "LockingSemantics",
792                     "AuthorizationProtocols", "AuthenticationProtocols",
793                     "Persistence", "DMTF Reserved", "Vendor Defined" }, Read]
794              uint16 SupportedProperties[] ;
795           
796                 [Experimental, Description (
797                     "Start a job to create a supported FileSystemSetting from a "
798                     "FileSystemSetting provided by the caller. If the operation "
799 karl  1.1           "completes successfully and did not require a long-running "
800                     "ConcreteJob, it will return 0. If 4096/0x1000 is returned, "
801                     "a ConcreteJob will be started to create the element. A "
802                     "Reference to the ConcreteJob will be returned in the output "
803                     "parameter Job. \n"
804                     "This method MAY return a CIM_Error representing that a "
805                     "single named property of a setting (or other) parameter "
806                     "(either reference or embedded object) has an invalid value "
807                     "or that an invalid combination of named properties of a "
808                     "setting (or other) parameter (either reference or embedded "
809                     "object) has been requested. \n"
810                     "If the input TemplateGoal is NULL or the empty string, this "
811                     "method returns a default FileSystemSetting that is "
812                     "supported by this FileSystemCapabilities. \n"
813                     "The output is returned as the SupportedGoal parameter. Both "
814                     "TemplateGoal and SupportedGoal are embedded objects and do "
815                     "not exist in the provider but are maintained by the client. "
816                     "\nIf the TemplateGoal specifies values that cannot be "
817                     "supported this method MUST return an appropriate error and "
818                     "should return a best match for a SupportedGoal."), 
819                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
820 karl  1.1           "10", "..", "4097", "4098..32767", "32768..65535" }, 
821                  Values { "Job Completed with No Error", "Not Supported",
822                     "Unknown", "Timeout", "Failed", "Invalid Parameter",
823                     "TemplateGoal is not well-formed",
824                     "TemplateGoal cannot be satisfied exactly",
825                     "StorageSetting cannot be used with ActualFileSystemType",
826                     "StorageSetting cannot be used with CopyTarget",
827                     "StorageSetting cannot be used with ObjectType",
828                     "DMTF Reserved", "Method Parameters Checked - Job Started",
829                     "Method Reserved", "Vendor Specific" }]
830              uint16 CreateGoal( 
831                    [IN ( false ), OUT, Description (
832                        "Reference to the job (may be null if job completed).")]
833                 CIM_ConcreteJob REF Job, 
834                    [IN, Description (
835                        "TemplateGoal is an element of class "
836                        "CIM_FileSystemSetting, or a derived class, encoded as a "
837                        "string-valued embedded object parameter, that is used as "
838                        "the template to be matched ."), 
839                     EmbeddedInstance ( "CIM_FileSystemSetting" )]
840                 string TemplateGoal, 
841 karl  1.1          [IN ( false ), OUT, Description (
842                        "SupportedGoal is an element of class "
843                        "CIM_FileSystemSetting, or a derived class, encoded as a "
844                        "string-valued embedded object parameter, that is used to "
845                        "return the best supported match to the TemplateGoal."), 
846                     EmbeddedInstance ( "CIM_FileSystemSetting" )]
847                 string SupportedGoal); 
848           
849           
850                 [Experimental, Description (
851                     "This method returns the \"expected\" size of StorageExtent "
852                     "that would support a file system specified by the input "
853                     "FileSystemGoal parameter assuming that the other settings "
854                     "for the StorageExtent are specified by the ExtentSetting "
855                     "parameter. \n"
856                     "If the input FileSystemGoal or the ExtentSetting are NULL, "
857                     "this method returns a value computed by using the default "
858                     "FileSystemSetting or some vendor-specific canned "
859                     "StorageSetting. \n"
860                     "A value of 0 is returned if this method is not able to "
861                     "determine a reasonable size or does not restrict sizes "
862 karl  1.1           "based on setting information."), 
863                  Units ( "Bytes" )]
864              uint64 GetRequiredStorageSize( 
865                    [IN, Description (
866                        "FileSystemGoal is an element of class "
867                        "CIM_FileSystemSetting, or a derived class, encoded as a "
868                        "string-valued embedded object parameter, that is used to "
869                        "specify the settings for the FileSystem to be created."), 
870                     EmbeddedInstance ( "CIM_FileSystemSetting" )]
871                 string FileSystemGoal, 
872                    [IN, Description (
873                        "ExtentSetting is an element of class CIM_StorageSetting, "
874                        "or a derived class, encoded as a string-valued embedded "
875                        "object parameter, that is used to specify the settings "
876                        "of the StorageExtent to be used for this FileSystem."), 
877                     EmbeddedInstance ( "CIM_StorageSetting" )]
878                 string ExtentSetting, 
879                    [OUT, Description (
880                        "A number that indicates the size of the storage extent "
881                        "that this FileSystem is expected to need. A value of 0 "
882                        "indicates that there is no expected size."), 
883 karl  1.1           Units ( "Bytes" )]
884                 uint64 ExpectedSize, 
885                    [OUT, Description (
886                        "A number that indicates the size of the smallest storage "
887                        "extent that would support the specified FileSystem. A "
888                        "value of 0 indicates that there is no minimum size."), 
889                     Units ( "Bytes" )]
890                 uint64 MinimumSizeAcceptable, 
891                    [OUT, Description (
892                        "A number that indicates the size of the largest storage "
893                        "extent that would be usable for the specified "
894                        "FileSystem. A value of 0 indicates that there is no "
895                        "maximum size."), 
896                     Units ( "Bytes" )]
897                 uint64 MaximumSizeUsable); 
898           };
899           
900           // ===================================================================
901           // DefaultElementCapabilities
902           // ===================================================================
903              [Association, Version ( "2.8.1000" ), Description (
904 karl  1.1        "An association between a CIM_ManagedElement and a "
905                  "CIM_Capabilities element that specifies that the managed "
906                  "element uses the other as a default. The CIM_Capabilities "
907                  "element MUST be associated to the CIM_ManagedElement by "
908                  "CIM_ElementCapabilities as well.")]
909           class CIM_DefaultElementCapabilities {
910           
911                 [Key, Description (
912                     "The CIM_ManagedElement for which this Capabilities element "
913                     "is a default.")]
914              CIM_ManagedElement REF ManagedElement;
915           
916                 [Key, Max ( 1 ), Description (
917                     "The CIM_Capabilities that is the default Capabilities "
918                     "element for the associated CIM_ManagedElement.")]
919              CIM_Capabilities REF Capabilities;
920           };
921           
922           // ===================================================================
923           // end of file
924           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2