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

  1 karl  1.1 // ===================================================================
  2           // Title:       System File Elements 2.7
  3           // Filename:    System27_FileElements.mof
  4           // Version:     2.7.0
  5           // Release:     Preliminary 
  6           // Date:        07/08/02
  7           // ===================================================================
  8           // Copyright 2002 Distributed Management Task Force, Inc. (DMTF).
  9           // All rights reserved.  
 10           // DMTF is a not-for-profit association of industry members dedicated 
 11           // to promoting enterprise and systems management and interoperability. 
 12           // DMTF specifications and documents may be reproduced for uses
 13           // consistent with this purpose by members and non-members, 
 14           // provided that correct attribution is given. 
 15           // As DMTF specifications may be revised from time to time, 
 16           // the particular version and release date should always be noted.
 17           //
 18           // Implementation of certain elements of this standard or proposed 
 19           // standard may be subject to third party patent rights, including 
 20           // provisional patent rights (herein "patent rights"). DMTF makes 
 21           // no representations to users of the standard as to the existence 
 22 karl  1.1 // of such rights, and is not responsible to recognize, disclose, or
 23           // identify any or all such third party patent right, owners or 
 24           // claimants, nor for any incomplete or inaccurate identification or 
 25           // disclosure of such rights, owners or claimants. DMTF shall have no 
 26           // liability to any party, in any manner or circumstance, under any 
 27           // legal theory whatsoever, for failure to recognize, disclose, or 
 28           // identify any such third party patent rights, or for such party's
 29           // reliance on the standard or incorporation thereof in its product, 
 30           // protocols or testing procedures. DMTF shall have no liability to 
 31           // any party implementing such standard, whether such implementation 
 32           // is foreseeable or not, nor to any patent owner or claimant, and shall 
 33           // have no liability or responsibility for costs or losses incurred if 
 34           // a standard is withdrawn or modified after publication, and shall be
 35           // indemnified and held harmless by any party implementing the 
 36           // standard from any and all claims of infringement by a patent owner 
 37           // for such implementations.
 38           //
 39           // For information about patents held by third-parties which have 
 40           // notified the DMTF that, in their opinion, such patent may relate to 
 41           // or impact implementations of DMTF standards, visit 
 42           // http://www.dmtf.org/about/policies/disclosures.php.
 43 karl  1.1 // ===================================================================
 44           // Description: The System Model defines system related management 
 45           //              concepts. This file defines the specific concepts to 
 46           //              manage file systems.
 47           //
 48           //              The object classes below are listed in an order that
 49           //              avoids forward references. Required objects, defined 
 50           //              by other working groups, are omitted.
 51           // ==================================================================
 52           // Change Log for v2.7
 53           // CR598 - Add Share, NFSShare, CIFSShare, SharedElement, 
 54           //         ImportedShare, and HostedShare
 55           // CR644 - Modify Share, NFSShare, CIFSShare, and ImportedShare
 56           //       - Add FileShare
 57           // CR748 - Promote HostedFileSystem.GroupComponent from ComputerSystem
 58           //         to System.  Fix the class description and the propagated 
 59           //         key descriptions in FileSystem.
 60           // CR757 - Change the subclassing of FileSystem from LogicalElement
 61           //         to EnabledLogicalElement
 62           // CR767 - Add the Compostion qualifer to DirectoryContainsFile,
 63           //         FileStorage, and HostedFileSystem
 64 karl  1.1 // ==================================================================
 65           
 66           #pragma locale ("en_US")
 67           
 68           
 69           // ===================================================================
 70           // FileSystem
 71           // ===================================================================
 72           [Version ("2.7.0"), Description (
 73               "A file or dataset store local to a System (such as a "
 74               "ComputerSystem or an ApplicationSystem) or remotely mounted "
 75               "from a file server.") ]
 76           class CIM_FileSystem : CIM_EnabledLogicalElement {
 77                [Propagated ("CIM_System.CreationClassName"), Key, MaxLen (256), 
 78                    Description (
 79                    "The scoping System's CreationClassName. Note that this "
 80                    "class was originally defined in the scope of a "
 81                    "ComputerSystem, and was later allowed to be scoped by "
 82                    "any System (for example, a computer or application system). "
 83                    "Unfortunately, the property name, CSCreationClassName, "
 84                    "could not be changed (for example, to SystemCreationClass"
 85 karl  1.1          "Name) without deprecating the class. This change was not "
 86                    "deemed critical to the semantics and therefore did not "
 87                    "merit deprecation.  So, the property name remains.") ]
 88               string CSCreationClassName;
 89               
 90               [Propagated ("CIM_System.Name"), Key, MaxLen (256),
 91                   Description ("The scoping System's Name. Note that this "
 92                   "class was originally defined in the scope of a "
 93                   "ComputerSystem, and was later allowed to be scoped by "
 94                   "any System (for example, a computer or application system). "
 95                   "Unfortunately, the property name, CSName, could not "
 96                   "be changed (for example, to SystemName) without "
 97                   "deprecating the class. This change was not deemed "
 98                   "critical to the semantics and therefore did not merit "
 99                   "deprecation.  So, the property name remains.") ]
100               string CSName;
101               
102               [Key, MaxLen (256), Description (
103                   "CreationClassName indicates the name of the class or the "
104                   "subclass used in the creation of an instance. When used "
105                   "with the other key properties of this class, this property "
106 karl  1.1         "allows all instances of this class and its subclasses to "
107                   "be uniquely identified.") ]
108               string CreationClassName;
109               
110               [Override ("Name"), Key, MaxLen (256), Description (
111                   "The inherited Name serves as key of a FileSystem instance "
112                   "within a ComputerSystem.") ]
113               string Name;
114               
115               [Description (
116                   "Path name or other information defining the root of the "
117                   "FileSystem."),
118                   MappingStrings {
119                       "MIB.IETF|HOST-RESOURCES-MIB.hrFSMountPoint", 
120                       "MIF.DMTF|Host File System|001.2"} ]
121               string Root;
122               
123               [Description (
124                   "FileSystems can read/write data in blocks which are defined "
125                   "independently of the underlying StorageExtents. This property "
126                   "captures the FileSystem's block size for data storage and "
127 karl  1.1         "retrieval."),
128                   Units("Bytes") ]
129               uint64 BlockSize;
130               
131               [Description (
132                   "The FileSystemSize property stores the total size of the File"
133                   "System in bytes. If unknown, enter 0."),
134                   Units("Bytes"), 
135                   MappingStrings {"MIF.DMTF|Host File System|001.13"} ]
136               uint64 FileSystemSize;
137               
138               [Gauge, Description (
139                   "AvailableSpace indicates the total amount of free space "
140                   "for the FileSystem, in bytes. If unknown, enter 0."),
141                   Units("Bytes"), 
142                   MappingStrings {"MIF.DMTF|Host File System|001.14", 
143                       "MIF.DMTF|Partition|002.4"} ]
144               uint64 AvailableSpace;
145               
146               [Description (
147                   "Indicates that the FileSystem is designated as read only."),
148 karl  1.1         MappingStrings {"MIB.IETF|HOST-RESOURCES-MIB.hrFSAccess", 
149                       "MIF.DMTF|Host File System|001.5"} ]
150               boolean ReadOnly;
151               
152               [Description (
153                   "A free form string indicating the algorithm or tool used to "
154                   "encrypt the FileSystem. If it is not possible or not desired "
155                   "to describe the encryption scheme (perhaps for security "
156                   "reasons), recommend using the following words: \"Unknown\" to "
157                   "represent that it is not known whether the FileSystem is "
158                   "encrypted or not, \"Encrypted\" to represent that the File"
159                   "System is encrypted but either its encryption scheme is not "
160                   "known or not disclosed, and \"Not Encrypted\" to represent "
161                   "that the FileSystem is not encrypted."),
162                   MappingStrings {"MIF.DMTF|Partition|002.8"} ]
163               string EncryptionMethod;
164               
165               [Description (
166                   "A free form string indicating the algorithm or tool used to "
167                   "compress the FileSystem. If it is not possible or not desired "
168                   "to describe the compression scheme (perhaps because it is not "
169 karl  1.1         "known), recommend using the following words: \"Unknown\" to "
170                   "represent that it is not known whether the FileSystem is "
171                   "compressed or not, \"Compressed\" to represent that the File"
172                   "System is compressed but either its compression scheme is not "
173                   "known or not disclosed, and \"Not Compressed\" to represent "
174                   "that the FileSystem is not compressed."),
175                   MappingStrings {"MIF.DMTF|Partition|002.7"} ]
176               string CompressionMethod;
177               
178               [Description (
179                   "Indicates that case sensitive file names are supported.") ]
180               boolean CaseSensitive;
181               
182               [Description (
183                   "Indicates that the case of file names are preserved.") ]
184               boolean CasePreserved;
185               
186               [Description (
187                   "Array defining the character sets or encoding supported by "
188                   "the FileSystem. For example, the values, \"ASCII\" (2) or "
189                   "\"ISO2022\" (4), may be specified."),
190 karl  1.1         ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8"},
191                   Values {"Unknown", "Other", "ASCII", "Unicode", 
192                       "ISO2022", "ISO8859", "Extended UNIX Code", "UTF-8",
193                       "UCS-2"} ]
194               uint16 CodeSet[];
195               
196               [Description (
197                   "Integer indicating the maximum length of a file name within "
198                   "the FileSystem. 0 indicates that there is no limit on file "
199                   "name length.") ]
200               uint32 MaxFileNameLength;
201               
202               [Description (
203                   "The minimum file allocation size (an integral number of "
204                   "blocks), imposed by the FileSystem. (The size of a block is "
205                   "specified in the BlockSize property for the FileSystem.) "
206                   "Minimum allocation size is the smallest amount of storage "
207                   "allocated to a LogicalFile by the FileSystem. This is not a "
208                   "mandatory minimum allocation for all FileSystems. Under "
209                   "stress conditions, some FileSystems may allocate storage "
210                   "in amounts smaller than the ClusterSize.") ]
211 karl  1.1     uint32 ClusterSize;
212               
213               [Description (
214                   "String describing the type of FileSystem and therefore, its "
215                   "conventions. For example, \"NTFS\" or \"S5\" may be listed "
216                   "as well as any additional information on the FileSystem's "
217                   "implementation. Since various flavors of FileSystems (like "
218                   "S5) exist, this property is defined as a string."),
219                   MappingStrings {"MIF.DMTF|Partition|002.6", 
220                       "MIF.DMTF|Host File System|001.4"} ]
221               string FileSystemType;
222           };
223           
224           
225           // ===================================================================
226           // LocalFileSystem
227           // ===================================================================
228           [Version ("2.6.0"), Description (
229               "A class derived from FileSystem that represents the file " 
230               "store controlled by a ComputerSystem through local means " 
231               "(e.g., direct device driver access). In this case, the " 
232 karl  1.1     "file store is managed directly by the ComputerSystem " 
233               "without the need for another computer to act as a " 
234               "file server. This definition does not breakdown in the " 
235               "case of a Clustered File System. In this scenario, the " 
236               "FileSystem is a LocalFileSystem, weak to the Cluster.") ]
237           class CIM_LocalFileSystem : CIM_FileSystem {
238           };
239           
240           
241           // ===================================================================
242           // RemoteFileSystem
243           // ===================================================================
244           [Version ("2.6.0"), Description (
245               "A class derived from FileSystem that represents access of the " 
246               "FileSystem via a network-related service. In this case, the " 
247               "file store is hosted by a computer, acting as a file server. " 
248               "For example, the file store for an NFS FileSystem is typically " 
249               "NOT on a ComputerSystem's locally controlled media, nor is " 
250               "it directly accessed through a device driver. Subclasses of " 
251               "RemoteFileSystem contain client-side configuration information " 
252               "related to the access of the FileSystem.") ]
253 karl  1.1 class CIM_RemoteFileSystem : CIM_FileSystem {
254           };
255           
256           
257           // ===================================================================
258           // NFS (NetworkFileSystem)
259           // ===================================================================
260           [Version ("2.6.0"), Description (
261               "A class derived from RemoteFileSystem representing that " 
262               "the FileSystem is mounted, using the NFS protocol, from " 
263               "a ComputerSystem. The properties of the NFS object " 
264               "deal with the operational aspects of the mount and represent " 
265               "the client-side configuration for NFS access. The " 
266               "FileSystemType (inherited from FileSystem) should be set " 
267               "to indicate the type of this FileSystem as it appears to " 
268               "the client.") ]
269           class CIM_NFS : CIM_RemoteFileSystem {
270               
271               [Description (
272                   "If set to true: Once the FileSystem is mounted, NFS requests "
273                   "are retried until the hosting System responds.\n" 
274 karl  1.1         "If set to false: Once the FileSystem is mounted, an error "
275                   "is returned if the hosting System does not respond.") ]
276               boolean HardMount;
277               
278               [Description (
279                   "If set to true: Retries are performed in the foreground.\n"
280                   "If set to false: If the first mount attempt fails, retries "
281                   "are performed in the background.") ]
282               boolean ForegroundMount;
283               
284               [Description (
285                   "If set to true: Interrupts are permitted for hard mounts.\n"
286                   "If set to false: Interrupts are ignored for hard mounts.") ]
287               boolean Interrupt;
288               
289               [Description ("Maximum number of mount failure retries "
290                   "allowed.") ]
291               uint16 MountFailureRetries;
292               
293               [Description (
294                   "Maximum number of NFS retransmissions allowed.") ]
295 karl  1.1     uint16 RetransmissionAttempts;
296               
297               [Description ("NFS timeout in tenths of a second."),
298                   Units ("Tenths of Seconds") ]
299               uint32 RetransmissionTimeout;
300               
301               [Description ("Read buffer size in bytes."),
302                   Units("Bytes") ]
303               uint64 ReadBufferSize;
304               
305               [Description ("Write buffer size in bytes."),
306                   Units("Bytes") ]
307               uint64 WriteBufferSize;
308               
309               [Description (
310                   "The remote ComputerSystem's (ie, the NFS File "
311                   "'Server's) UDP port number.") ]
312               uint32 ServerCommunicationPort;
313               
314               [Description (
315                   "If set to true: Control attribute caching is enabled.\n"
316 karl  1.1         "If set to false: Control attribute caching is disabled.") ]
317               boolean AttributeCaching;
318               
319               [Description (
320                   "Minimum number of seconds that cached attributes are held "
321                   "after file modification."),
322                   Units("Seconds") ]
323               uint16 AttributeCachingForRegularFilesMin;
324               
325               [Description (
326                   "Maximum number of seconds that cached attributes are held "
327                   "after file modification."),
328                   Units("Seconds") ]
329               uint16 AttributeCachingForRegularFilesMax;
330               
331               [Description (
332                   "Minimum number of seconds that cached attributes are held "
333                   "after directory update."),
334                   Units("Seconds") ]
335               uint16 AttributeCachingForDirectoriesMin;
336               
337 karl  1.1     [Description (
338                   "Maximum number of seconds that cached attributes are held "
339                   "after directory update."),
340                   Units("Seconds") ]
341               uint16 AttributeCachingForDirectoriesMax;
342           };
343           
344           
345           // ===================================================================
346           // LogicalFile
347           // ===================================================================
348           [Version ("2.6.0"), Description (
349               "A LogicalFile is a named collection of data or executable "
350               "code, or represents a LogicalDevice or Directory.  It is "
351               "located within the context of a FileSystem, on a Storage"
352               "Extent.") ]
353           class CIM_LogicalFile : CIM_LogicalElement {
354               
355               [Propagated ("CIM_FileSystem.CSCreationClassName"), 
356                   Key, MaxLen (256),
357                   Description (
358 karl  1.1             "The scoping ComputerSystem's CreationClassName.") ]
359               string CSCreationClassName;
360               
361               [Propagated ("CIM_FileSystem.CSName"),
362                   Key, MaxLen (256),
363                   Description (
364                       "The scoping ComputerSystem's Name.") ]
365               string CSName;
366               
367               [Propagated ("CIM_FileSystem.CreationClassName"), 
368                   Key, MaxLen (256),
369                   Description ("The scoping FileSystem's CreationClassName.") ]
370               string FSCreationClassName;
371               
372               [Propagated ("CIM_FileSystem.Name"),
373                   Key, MaxLen (256),
374                   Description ("The scoping FileSystem's Name.") ]
375               string FSName;
376               
377               [Key, MaxLen (256),
378                   Description (
379 karl  1.1         "CreationClassName indicates the name of the class or the "
380                   "subclass used in the creation of an instance. When used "
381                   "with the other key properties of this class, this property "
382                   "allows all instances of this class and its subclasses to "
383                   "be uniquely identified.") ]
384               string CreationClassName;    
385               
386               [Override ("Name"), Key, MaxLen (1024),
387                  Description (
388                  "The inherited Name serves as part of the key of a LogicalFile "
389                  "instance within a FileSystem. A unique identifier (such as a "
390                  "full path name) is required as a Name value.  Since Files are "
391                  "weak to their FileSystem (and not to a Directory which would "
392                  "provide a more granular naming algorithm), care must be "
393                  "taken to make LogicalFile's Name unique for a given Creation"
394                  "ClassName and FileSystem. A full path name is one way "
395                  "to do this.") ]
396               string Name;
397               
398               [Gauge, Description ("Size of the File in bytes."),
399                   Units ("Bytes") ]
400 karl  1.1     uint64 FileSize;
401               
402               [Description (
403                   "File's creation date.") ] 
404               datetime CreationDate;
405               
406               [Description (
407                   "Time that the File was last modified.") ] 
408               datetime LastModified;
409               
410               [Description (
411                   "Time that the File was last accessed.") ] 
412               datetime LastAccessed;
413               
414               [Description (
415                   "Boolean indicating that the File can be read.") ] 
416               boolean Readable;
417               
418               [Description (
419                   "Boolean indicating that the File can be written.") ]
420               boolean Writeable;
421 karl  1.1     
422               [Description (
423                   "Indicates the file is executable.") ] 
424               boolean Executable;
425               
426               [Description (
427                   "A free form string indicating the algorithm or tool used to "
428                   "compress the LogicalFile. If it is not possible or not "
429                   "desired to describe the compression scheme (perhaps because "
430                   "it is not known), recommend using the following words: "
431                   "\"Unknown\" to represent that it is not known whether the "
432                   "LogicalFile is compressed or not, \"Compressed\" to "
433                   "represent that the File is compressed but either its "
434                   "compression scheme is not known or not disclosed, and \"Not "
435                   "Compressed\" to represent that the LogicalFile is not "
436                   "compressed.") ] 
437               string CompressionMethod;
438               
439               [Description (
440                   "A free form string indicating the algorithm or tool used to "
441                   "encrypt the LogicalFile. If it is not possible or not desired "
442 karl  1.1         "to describe the encryption scheme (perhaps for security "
443                   "reasons), recommend using the following words: \"Unknown\" to "
444                   "represent that it is not known whether the LogicalFile is "
445                   "encrypted or not, \"Encrypted\" to represent that the File "
446                   "is encrypted but either its encryption scheme is not known "
447                   "or not disclosed, and \"Not Encrypted\" to represent "
448                   "that the LogicalFile is not encrypted.") ] 
449               string EncryptionMethod;
450               
451               [Counter, Description (
452                   "Integer indicating the number of 'file opens' that are "
453                   "currently active against the File.") ]
454               uint64 InUseCount;
455           };
456           
457           
458           // ===================================================================
459           // DataFile
460           // ===================================================================
461           [Version ("2.6.0"), Description (
462               "DataFile is a type of LogicalFile that is a named collection "
463 karl  1.1     "of data or executable code.") ]
464           class CIM_DataFile : CIM_LogicalFile {
465           };
466           
467           
468           // ===================================================================
469           // Directory
470           // ===================================================================
471           [Version ("2.6.0"), Description (
472               "Directory is a type of File that logically groups Files "
473               "'contained' in it, and provides path information for the "
474               "grouped Files.") ]
475           class CIM_Directory : CIM_LogicalFile {
476           };
477           
478           
479           // ===================================================================
480           // DeviceFile
481           // ===================================================================
482           [Version ("2.6.0"), Description (
483               "DeviceFile is a special type of LogicalFile that represents "
484 karl  1.1     "a Device. This convention is useful for some operating systems "
485               "that manage devices using a byte stream I/O model. The Logical"
486               "Device that is associated with this file is specified using "
487               "the DeviceAccessedByFile relationship.") ]
488           class CIM_DeviceFile : CIM_LogicalFile {
489           };
490           
491           
492           // ===================================================================
493           // FIFOPipeFile
494           // ===================================================================
495           [Version ("2.6.0"), Description (
496               "FIFOPipeFile is a special type of LogicalFile that represents "
497               "an interprocess FIFO (sometimes referred to as a \"named pipe\"). "
498               "Operating systems use this convention to manage interprocess "
499               "communication through processes reading and writing the FIFO. "
500               "The FIFO can be accessed by unrelated processes, in contrast to "
501               "the more well-known command line redirection mechanism (e.g. "
502               "UNIX's 'ps -eaf | grep foo', also known as an \"unnamed pipe\"). "
503               "An exemplary operating system implementation (using the "
504               "FIFO concept) is the UNIX S_IFIFO file type.") ]
505 karl  1.1 class CIM_FIFOPipeFile : CIM_LogicalFile {
506           };
507           
508           
509           // ===================================================================
510           // SymbolicLink
511           // ===================================================================
512           [Version ("2.6.0"), Description (
513               "This class is a special type of LogicalFile that represents "
514               "a Symbolic Link. This convention is useful for some operating "
515               "systems that want to represent a single file in multiple "
516               "places or a single file that is represented via multiple "
517               "names.") ]
518           class CIM_SymbolicLink : CIM_LogicalFile {
519               
520               [Required,
521                   Description ("The target file of the symbolic link.") ]
522               string TargetFile;
523           };
524           
525           
526 karl  1.1 // ===================================================================
527           // DeviceAccessedByFile
528           // ===================================================================
529           [Association, Version ("2.6.0"), Description (
530               "Specifies the LogicalDevice that is associated with, and "
531               "accessed using the referenced DeviceFile.") ]
532           class CIM_DeviceAccessedByFile : CIM_Dependency {   
533               
534               [Override ("Antecedent"),
535                   Description ("The DeviceFile.") ]
536               CIM_DeviceFile REF Antecedent;
537               
538               [Override ("Dependent"), Max (1), 
539                   Description (
540                       "The Device that is accessed using the DeviceFile.") ]
541               CIM_LogicalDevice REF Dependent;
542           };
543           
544           
545           // ===================================================================
546           // DirectoryContainsFile
547 karl  1.1 // ===================================================================
548           [Association, Aggregation, Composition, 
549            Version ("2.7.0"), Description (
550               "Specifies the hierarchical arrangement of LogicalFiles in a "
551               "Directory.") ]
552           class CIM_DirectoryContainsFile : CIM_Component {   
553               
554               [Override ("GroupComponent"), Aggregate, Max (1),
555                   Description ("The Directory.") ]
556               CIM_Directory REF GroupComponent;
557               
558               [Override ("PartComponent"),
559                   Description (
560                       "The LogicalFile 'contained within' the Directory.") ]
561               CIM_LogicalFile REF PartComponent;
562           };
563           
564           
565           // ===================================================================
566           // Mount
567           // ===================================================================
568 karl  1.1 [Association,  Version ("2.6.0"), Description ( 
569               "An association between a FileSystem and a Directory "
570               "which indicates that the Directory is being attached to "
571               "the FileSystem. The semantics of this relationship require "
572               "that the mounted Directory be contained by a FileSystem "
573               "(via the FileStorage association) that is different from "
574               "the FileSystem referenced as the Dependent. The "
575               "Directory's containing FileSystem could be either " 
576               "local or remote. For example, a LocalFileSystem on a Solaris " 
577               "ComputerSystem can mount a Directory from the FileSystem "
578               "accessed via the machine's CDROM drive, i.e., another LocalFile"
579               "System. On the other hand, in a 'remote' case, the Directory "
580               "is first exported by its FileSystem, which is hosted on another "
581               "ComputerSystem acting (for example) as a file server. In order "
582               "to distinguish these two types of Mount, it is recommended that "
583               "a CIM_Export association always be defined for the remotely "
584               "accessed/mounted Directories.") ]
585           class CIM_Mount : CIM_Dependency { 
586               
587               [Override ("Antecedent"), Max (1), 
588                   Description ("The Directory mounted.") ]
589 karl  1.1     CIM_Directory REF Antecedent; 
590               
591               [Override ("Dependent"), 
592                   Description ("The FileSystem the Directory is mounted on.") ]
593               CIM_FileSystem REF Dependent; 
594           };
595           
596           
597           // ===================================================================
598           // Export
599           // ===================================================================
600           [Association, Version ("2.6.0"), Description ( 
601               "An association between a LocalFileSystem and its Directories " 
602               "indicating that the specified Directories are available for " 
603               "mount. When exporting an entire FileSystem, the Directory " 
604               "should reference the topmost directory of the FileSystem.") ]
605           class CIM_Export { 
606               
607               [Key, Max (1), Description (
608                   "The LocalFileSystem.") ]
609               CIM_LocalFileSystem REF LocalFS; 
610 karl  1.1     
611               [Key, Description (
612                   "The Directory exported for mount.") ] 
613               CIM_Directory REF Directory; 
614               
615               [Description (
616                   "Name under which the Directory is exported.") ]
617               string ExportedDirectoryName; 
618           }; 
619           
620           
621           // ===================================================================
622           // HostedFileSystem
623           // ===================================================================
624           [Association,  Aggregation,  Composition, Version ("2.7.0"), 
625               Description (
626               "A link between the System (such as a Computer or Application"
627               "System) and the FileSystem that is a part of it.") ]
628           class CIM_HostedFileSystem : CIM_SystemComponent {
629               
630               [Override ("GroupComponent"), Aggregate, Min (1), Max (1),
631 karl  1.1         Description ("The System that hosts the FileSystem.") ]
632               CIM_System REF GroupComponent;
633               
634               [Override ("PartComponent"), Weak,
635                   Description ("The FileSystem that is part of the System and "
636                       "hosted on it.") ]
637               CIM_FileSystem REF PartComponent;
638           };
639           
640           
641           // ===================================================================
642           // FileStorage
643           // ===================================================================
644           [Association, Aggregation, Composition, Version ("2.7.0"), 
645               Description (
646               "A link between the FileSystem and the LogicalFile(s) addressed "
647               "through this FileSystem.") ]
648           class CIM_FileStorage : CIM_Component {
649               
650               [Override ("GroupComponent"), Aggregate, Min (1), Max (1),
651                   Description ("The FileSystem.") ]
652 karl  1.1     CIM_FileSystem REF GroupComponent;
653               
654               [Override ("PartComponent"), Weak, Description (
655                   "The LogicalFile stored in the context of the FileSystem.") ]
656               CIM_LogicalFile REF PartComponent;
657           };
658           
659           
660           // ===================================================================
661           // ResidesOnExtent
662           // ===================================================================
663           [Association, Version ("2.6.0"), Description (
664               "An association between a FileSystem and the StorageExtent "
665               "where it is located. Typically, a FileSystem ResidesOn "
666               "a LogicalDisk.") ] 
667           class CIM_ResidesOnExtent : CIM_Dependency {
668           
669               [Override ("Antecedent"), Description (
670                   "The StorageExtent.") ]
671               CIM_StorageExtent REF Antecedent;
672           
673 karl  1.1     [Override ("Dependent"), Description (
674                   "The FileSystem that is located on the StorageExtent.") ]
675               CIM_FileSystem REF Dependent;
676           };
677           
678           
679           // ===================================================================
680           // Share
681           // ===================================================================
682           [Abstract, Experimental, Version ("2.7.0"), Description (
683               "A Share is representative of an object presented for use "
684               "(or shared) across systems.  Instances of CIM_Share are "
685               "associated with the shared object on the 'server'-side via "
686               "the CIM_SharedElement association.  Shares are mounted on the "
687               "'client'-side (usually into another namespace) via the CIM_Import"
688               "Share association.  CIM_Share is Abstract to force subclassing to "
689               "define the semantics of sharing." ) ] 
690           class CIM_Share : CIM_LogicalElement {
691               
692               [Key, MaxLen (256),
693                   Propagated ("CIM_System.CreationClassName"), 
694 karl  1.1         Description ("The scoping System's CreationClassName. ") ] 
695               string SystemCreationClassName;
696           
697               [Key, Propagated ("CIM_System.Name"), 
698                   Description ("The scoping System's Name.") ] 
699               string SystemName;
700           
701               [Key, MaxLen (256), Description (
702                   "CreationClassName indicates the name of the class or the "
703                   "subclass used in the creation of an instance.") ]
704               string CreationClassName;
705           
706               [Override("Name"), Key, Description (
707                   "The Name property, inherited from LogicalElement, "
708                   "defines the shared name by which the shared object is "
709                   "exported.") ]
710               string Name;
711           };
712           
713           
714           // ===================================================================
715 karl  1.1 // FileShare
716           // ===================================================================
717           [Abstract, Experimental, Version ("2.7.0"), Description (
718               "A FileShare is representative of a file or directory presented "
719               "for use (or shared) across systems.  Instances of FileShare are "
720               "associated with the shared object on the 'server'-side via "
721               "the CIM_SharedElement association.  Shares are mounted on the "
722               "'client'-side (usually into another namespace) via the CIM_Import"
723               "Share association.  FileShare is Abstract to force subclassing to "
724               "define the semantics of sharing." ) ] 
725           class CIM_FileShare : CIM_Share {      
726               
727               [Description ("Indicates whether a directory or file is presented "
728                   "for use (or shared) across systems.  A value of true "
729                   "represents a directory.  A value of false represents a file") ]
730               boolean SharingDirectory;
731           };
732           
733           
734           // ===================================================================
735           // NFSShare
736 karl  1.1 // ===================================================================
737           [Experimental, Version ("2.7.0"), Description (
738               "An NFSShare represents a Directory associated "
739               "via CIM_SharedElement that is made accessible to "
740               "other systems. On the client-side, the NFSShare is "
741               "associated with its mount point via "
742               "CIM_ImportedShare.") ]
743           class CIM_NFSShare : CIM_FileShare {
744               
745               [Override("Name"), Description (
746                   "The Name property, inherited from Share, defines the "
747                   "shared name by which the shared object is exported.  "
748                   "For NFS, this will typically be the pathname of the "
749                   "exported directory, using forward slashes '/' to "
750                   "precede directory names in the path.") ]
751               string Name;
752           };
753           
754           
755           // ===================================================================
756           // CIFSShare
757 karl  1.1 // ===================================================================
758           [Experimental, Version ("2.7.0"), Description (
759               "A CIFSShare represents a File, Directory, or "
760               "Print Queue that is made accessible to other systems. "
761               "If a File or Directory, it is associated "
762               "via CIM_SharedElement.  And on the client-side, "
763               "the CIFSShare representing the File or Directory is "
764               "associated with its mount point via "
765               "CIM_ImportedShare.  Other subclasses of "
766               "LogicalIdentity would make the associations for other "
767               "types of CIFSShare.") ]
768           class CIM_CIFSShare: CIM_FileShare {     
769           
770               [Override("Name"), Description (
771                   "The Name property, inherited from Share, defines the "
772                   "shared name by which the shared object is exported.  "
773                   "For CIFS, this will typically be a single-level, "
774                   "user-friendly, system-unique name.") ]
775               string Name;
776           };
777           
778 karl  1.1 
779           // ===================================================================
780           // SharedElement
781           // ===================================================================
782           [Association, Experimental, Version ("2.7.0"), Description (
783               "SharedElement associates the Share to a LogicalElement"
784               "that is being exported.")     ]
785           class CIM_SharedElement: CIM_LogicalIdentity {
786                     
787               [Override("SystemElement"), Max (1), 
788                   Description ("The Directory that is Shared.") ] 
789               CIM_LogicalElement REF SystemElement;
790           
791               [Override("SameElement"), Description (
792                   "The Shared view of the Directory.") ]
793               CIM_Share REF SameElement;
794           };
795           
796           
797           // ===================================================================
798           // ImportedShare
799 karl  1.1 // ===================================================================
800           [Association, Experimental, Version ("2.7.0"), Description ( 
801               "ImportedShare associates the Share to the LogicalElement, that "
802               "represents the identity of the shared element in the importing "
803               "system.") ] 
804           class CIM_ImportedShare : CIM_LogicalIdentity {
805               
806               [Override("SystemElement"), Description (
807                   "The LogicalElement that the Share is Imported onto.") ] 
808               CIM_LogicalElement REF SystemElement;
809           
810               [Override("SameElement"), Max (1), Description (
811                   "The Share that the LogicalFile is a surrogate for.") ]
812               CIM_Share REF SameElement;
813           };
814           
815           
816           // ==================================================================
817           // HostedShare
818           // ==================================================================
819           [Association, Experimental, Version ("2.7.0"), Description (
820 karl  1.1     "CIM_HostedShare is an association between a Share and "
821               "the System on which the functionality resides.  The "
822               "cardinality of this association is 1-to-many.  A System "
823               "may host many Shares. Shares are weak with respect to "
824               "their hosting System. Heuristic:  A Share is hosted on "
825               "the System where the LogicalElement that Exports the "
826               "Share is located, (via LogicalIdentity.)") ] 
827           class CIM_HostedShare:CIM_Dependency {
828           
829               [Override ("Antecedent"), Max (1), Min (1),
830                   Description ("The hosting System.") ] 
831               CIM_System REF Antecedent;
832           
833               [Override ("Dependent"), Weak,
834                   Description ("The Share hosted on the System.") ] 
835               CIM_Share REF Dependent;
836           };
837           
838           
839           // ===================================================================
840           // end of file
841 karl  1.1 // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2