# Class CIM_FileSystemCapabilities
extends CIM_Capabilities

FileSystemCapabilities specifies the combination of properties that a FileSystemService can support when creating or maintaining FileSystems. Each supported combination of properties is specified by a FileSystemSetting that is associated with the FileSystemCapabilities element via ElementSettingData. A FileSystemCapabilities element specifies the properties supported when using it. This class provides a CreateGoal method that can be used to create a FileSystemSetting element that can be used as a goal for creating or modifying a filesystem. This class also supports persistence and recoverability of a FileSystem and its contained elements as defined in CIM 2.8 for the use of DatabaseStorageArea.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_Capabilities
|
+--CIM_FileSystemCapabilities

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | FileSystemCapabilities specifies the combination of properties that a FileSystemService can support when creating or maintaining FileSystems. Each supported combination of properties is specified by a FileSystemSetting that is associated with the FileSystemCapabilities element via ElementSettingData. A FileSystemCapabilities element specifies the properties supported when using it. This class provides a CreateGoal method that can be used to create a FileSystemSetting element that can be used as a goal for creating or modifying a filesystem. This class also supports persistence and recoverability of a FileSystem and its contained elements as defined in CIM 2.8 for the use of DatabaseStorageArea.
UMLPackagePath | string | CIM::System::FilesystemServices
Version | string | 2.28.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
ActualFileSystemType | uint16 | 0
Description | string | An enumerated value that indicates the file system implementation type supported by this Capabilities.
Experimental | boolean | true
ModelCorrespondence | string | CIM_FileSystemSetting.ActualFileSystemType
Read | boolean | true
ValueMap | string | 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, .., 0x8000..
Values | string | Unknown, UFS, HFS, FAT, FAT16, FAT32, NTFS4, NTFS5, XFS, AFS, EXT2, EXT3, REISERFS, DMTF Reserved, Vendor Defined
SupportedOperations | uint16[] |
Description | string | An array of enumerated values representing the operations to files and directories on the file system. Set of supported operations depends on the file system type. The operation information is used as the action type in the access control management.
Experimental | boolean | true
ValueMap | string | 1, 2, 3, 4, 5, 6, 7, .., 0x8000..
Values | string | Read, Write, Execute, Create, Rename, Delete, Change Attribute, DMTF Reserved, Vendor Reserved
SupportedOtherPersistenceTypes | string[] |
ArrayType | string | Indexed
Deprecated | string | CIM_FileSystemSetting.OtherPersistenceTypes
Description | string | An array of strings describing the persistence capabilities where the corresponding entry in SupportedPersistenceTypes has a value of "Other". This value is ignored in all other cases.
ModelCorrespondence | string | CIM_FileSystemCapabilities.SupportedPersistenceTypes, CIM_FileSystem.OtherPersistenceType
SupportedPersistenceTypes | uint16[] |
ArrayType | string | Indexed
Deprecated | string | CIM_FileSystemSetting.PersistenceTypes
Description | string | An array of enumerated values representing the persistence capabilities of the FileSystem. A value of "Persistent" indicates that the FileSystem supports persistence, can be preserved through an orderly shutdown and could be protected. A value of "Temporary" indicates that the FileSystem supports non-persistence, may not be protected and may not survive a shutdown. A value of "External" indicates that the FileSystem could controlled outside of the operating environment and may need to be protected by specialized means. A value of "Other" is provided to allow for additional persistence types, to be described in the OtherPersistenceType attribute, and is expected to be rarely, if ever, used.
ModelCorrespondence | string | CIM_FileSystemCapabilities.SupportedPersistenceTypes, CIM_FileSystem.PersistenceType
ValueMap | string | 1, 2, 3, 4
Values | string | Other, Persistent, Temporary, External
SupportedProperties | uint16[] |
Description | string | An array of property names of the Setting that this Capabilities element supports. The Object-related parameters are not specified because they must always be supported even if not used.
Experimental | boolean | true
Read | boolean | true
ValueMap | string | 2, 3, 4, 5, 6, 7, 8, 9, 10, .., 0x8000..
Values | string | DataExtentsSharing, CopyTarget, FilenameCaseAttributes, FilenameStreamFormats, FilenameFormats, LockingSemantics, AuthorizationProtocols, AuthenticationProtocols, Persistence, DMTF Reserved, Vendor Defined

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
Description | string | CIM_ManagedElement
ElementName | string | CIM_Capabilities
Generation | uint64 | CIM_ManagedElement
InstanceID | string | CIM_Capabilities

## Class Methods

### Local Class Methods

#### CreateGoal (uint16)

#### Method Qualifiers (CreateGoal)

Name | Data Type | Value
--- | --- | ---
Description | string | Start a job to create a supported FileSystemSetting from a FileSystemSetting provided by the caller. If the operation completes successfully and did not require a long-running ConcreteJob, it will return 0. If 4096/0x1000 is returned, a ConcreteJob will be started to create the element. A Reference to the ConcreteJob will be returned in the output parameter Job. This method MAY return a CIM_Error representing that a single named property of a setting (or other) parameter (either reference or embedded object) has an invalid value or that an invalid combination of named properties of a setting (or other) parameter (either reference or embedded object) has been requested. If the input TemplateGoal is NULL or the empty string, this method returns a default FileSystemSetting that is supported by this FileSystemCapabilities. The output is returned as the SupportedGoal parameter. Both TemplateGoal and SupportedGoal are embedded objects and do not exist in the provider but are maintained by the client. If the TemplateGoal specifies values that cannot be supported this method MUST return an appropriate error and should return a best match for a SupportedGoal.
Experimental | boolean | true
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, .., 4097, 4098..32767, 32768..65535
Values | string | Job Completed with No Error, Not Supported, Unknown, Timeout, Failed, Invalid Parameter, TemplateGoal is not well-formed, TemplateGoal cannot be satisfied exactly, StorageSetting cannot be used with ActualFileSystemType, StorageSetting cannot be used with CopyTarget, StorageSetting cannot be used with ObjectType, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (CreateGoal)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
SupportedGoal | string
Description | string | SupportedGoal is an element of class CIM_FileSystemSetting, or a derived class, encoded as a string-valued embedded object parameter, that is used to return the best supported match to the TemplateGoal.
EmbeddedInstance | string | CIM_FileSystemSetting
IN | boolean | false
OUT | boolean | true
TemplateGoal | string
Description | string | TemplateGoal is an element of class CIM_FileSystemSetting, or a derived class, encoded as a string-valued embedded object parameter, that is used as the template to be matched .
EmbeddedInstance | string | CIM_FileSystemSetting
IN | boolean | true
Job | REF CIM_ConcreteJob
Description | string | Reference to the job (may be null if job completed).
IN | boolean | false
OUT | boolean | true

#### GetRequiredStorageSize (uint64)

#### Method Qualifiers (GetRequiredStorageSize)

Name | Data Type | Value
--- | --- | ---
Description | string | This method returns the "expected" size of StorageExtent that would support a file system specified by the input FileSystemGoal parameter assuming that the other settings for the StorageExtent are specified by the ExtentSetting parameter. If the input FileSystemGoal or the ExtentSetting are NULL, this method returns a value computed by using the default FileSystemSetting or some vendor-specific canned StorageSetting. A value of 0 is returned if this method is not able to determine a reasonable size or does not restrict sizes based on setting information.
Experimental | boolean | true
PUnit | string | byte
Units | string | Bytes

#### Method Parameters (GetRequiredStorageSize)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ExpectedSize | uint64
Description | string | A number that indicates the size of the storage extent that this FileSystem is expected to need. A value of 0 indicates that there is no expected size.
OUT | boolean | true
PUnit | string | byte
Units | string | Bytes
ExtentSetting | string
Description | string | ExtentSetting is an element of class CIM_StorageSetting, or a derived class, encoded as a string-valued embedded object parameter, that is used to specify the settings of the StorageExtent to be used for this FileSystem.
EmbeddedInstance | string | CIM_StorageSetting
IN | boolean | true
FileSystemGoal | string
Description | string | FileSystemGoal is an element of class CIM_FileSystemSetting, or a derived class, encoded as a string-valued embedded object parameter, that is used to specify the settings for the FileSystem to be created.
EmbeddedInstance | string | CIM_FileSystemSetting
IN | boolean | true
MaximumSizeUsable | uint64
Description | string | A number that indicates the size of the largest storage extent that would be usable for the specified FileSystem. A value of 0 indicates that there is no maximum size.
OUT | boolean | true
PUnit | string | byte
Units | string | Bytes
MinimumSizeAcceptable | uint64
Description | string | A number that indicates the size of the smallest storage extent that would support the specified FileSystem. A value of 0 indicates that there is no minimum size.
OUT | boolean | true
PUnit | string | byte
Units | string | Bytes

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
CreateGoalSettings | uint16 | CIM_Capabilities