# Class CIM_TierPolicyService
extends CIM_TierService

The TierPolicyService class provides methods to allow a client to manage policies used in storage tiering.

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

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_Service
|
+--CIM_TierService
|
+--CIM_TierPolicyService

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | The TierPolicyService class provides methods to allow a client to manage policies used in storage tiering.
Experimental | boolean | true
UMLPackagePath | string | CIM::Device::StorageServices
Version | string | 2.32.0

## Class Properties

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CreationClassName | string | CIM_Service
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
Name | string | CIM_Service
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PrimaryOwnerContact | string | CIM_Service
PrimaryOwnerName | string | CIM_Service
PrimaryStatus | uint16 | CIM_ManagedSystemElement
RequestedState | uint16 | CIM_EnabledLogicalElement
Started | boolean | CIM_Service
StartMode | string | CIM_Service
Status | string | CIM_ManagedSystemElement
SystemCreationClassName | string | CIM_Service
SystemName | string | CIM_Service
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
OperationalStatus | uint16[] | CIM_ManagedSystemElement
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Local Class Methods

#### CreateStorageTierPolicyRule (uint32)

#### Method Qualifiers (CreateStorageTierPolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | Create a new storage tiering policy.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 0x8000..
Values | string | Completed with No Error, Not Supported, Unknown, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (CreateStorageTierPolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
Activity | uint16
Description | string | Indicates the purpose of the policy rule. Data movement: Rule to be applied for data movement. Workload statistics collection: Rule is in effect for collecting statistics about the managed element. If null, defaults to Data movement.
IN | boolean | true
ValueMap | string | 2, 3, .., 0x8000..
Values | string | Data movement, Workload statistics collection, DMTF Reserved, Vendor Specific
ConditionNegated | boolean
Description | string | If true, the supplied PolicyTimePeriodCondition should be negated -- the time period the rule shall not be in effect. If false, it specifies the time period the rule shall be in effect. If NULL, the property shall have the value of false.
IN | boolean | true
ModelCorrespondence | string | CreateStorageTierPolicyRule.PolicyTimePeriodCondition
PolicyRuleName | string
Description | string | A end user relevant name for the created policy rule. If null, then a system supplied default name may be used.
IN | boolean | true
PolicyState | uint16
Description | string | Indicates whether the created policy is set to Enabled or Disabled. If null, the policy is set to Enabled.
IN | boolean | true
ModelCorrespondence | string | CIM_TierPolicyRule.Enabled
ValueMap | string | 2, 3, .., 0x8000..
Values | string | Enabled, Disabled, DMTF Reserved, Vendor Specific
PolicyTimePeriodCondition | string
Description | string | If provided, it represents the time periods during which the policy is active. If not provided, the implementation decides.
EmbeddedInstance | string | CIM_PolicyTimePeriodCondition
IN | boolean | true
TierPolicySettingData | string
Description | string | If provided, it supplies additional information to incorporate in a policy rule. For example, the RulePriority.
EmbeddedInstance | string | CIM_TierPolicySettingData
IN | boolean | true
TimePeriodCondition | uint16
Description | string | If provided, sets TierPolicyRule.TimePeriodCondition. If not provided, the implementation sets the value based on whether the parameter PolicyTimePeriodCondition is supplied.
IN | boolean | true
ModelCorrespondence | string | TierPolicyRule.TimePeriodCondition, CreateStorageTierPolicyRule.PolicyTimePeriodCondition
ValueMap | string | 2, 3, 4, 5, 6, 7, .., 0x8000..
Values | string | Implementation Decides, Not Available, All The Time, Associated Time Period, Global, None, DMTF Reserved, Vendor Specific
MaxPercentAllocated | uint16[]
ArrayType | string | Indexed
Description | string | The percentage of the capacity that is allocated from the corresponding storage tier. This array is index-correlated with the array Tiers.
IN | boolean | true
MaxValue | sint64 | 100
MinValue | sint64 | 0
ModelCorrespondence | string | CreateStorageTierPolicyRule.Tiers
PUnit | string | percent
Units | string | Percent
InElements | CIM_ManagedElement[]
Description | string | Associate these elements to the created policy.
IN | boolean | true
Tiers | CIM_StorageTier[]
ArrayType | string | Indexed
Description | string | List of storage tiers to associate to this policy. If null, no tiers will be associated to this policy.
IN | boolean | true
ModelCorrespondence | string | CreateStorageTierPolicyRule.MaxPercentAllocated
Job | REF CIM_ConcreteJob
Description | string | Reference to the job (may be NULL if job is completed).
IN | boolean | false
OUT | boolean | true
PolicyRule | REF CIM_PolicyRule
Description | string | Reference to the created PolicyRule.
IN | boolean | false
OUT | boolean | true

#### DeleteStorageTierPolicyRule (uint32)

#### Method Qualifiers (DeleteStorageTierPolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | Delete a storage tiering policy.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 0x8000..
Values | string | Completed with No Error, Not Supported, Unknown, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (DeleteStorageTierPolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
Force | boolean
Description | string | If the policy is actively being used, the system may prevent the policy to be deleted. By passing true for this parameter, the system will attempt to delete an active policy.
IN | boolean | true
Job | REF CIM_ConcreteJob
Description | string | Reference to the job (may be NULL if job is completed).
IN | boolean | false
OUT | boolean | true
PolicyRule | REF CIM_PolicyRule
Description | string | Storage policy rule to delete.
IN | boolean | true
Required | boolean | true

#### ModifyStorageTierPolicyRule (uint32)

#### Method Qualifiers (ModifyStorageTierPolicyRule)

Name | Data Type | Value
--- | --- | ---
Description | string | Modify a storage tiering policy. The parameter "Operation" specifies the modification to be performed. Only the applicable parameters for the requested operation are necessary to be supplied. For example, to update the associated PolicyTimePeriodCondition to a policy rule, only the parameters PolicyTimePeriodCondition and PolicyRule are necessary. Adding or removing PolicyTimePeriodCondition also updates the TimePeriodCondition.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 0x8000..
Values | string | Completed with No Error, Not Supported, Unknown, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (ModifyStorageTierPolicyRule)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ConditionNegated | boolean
Description | string | If true, the supplied PolicyTimePeriodCondition should be negated -- the time period the rule shall not be in effect. If false, it specifies the time period the rule shall be in effect. If NULL, the property shall have the value of false.
IN | boolean | true
ModelCorrespondence | string | ModifyStorageTierPolicyRule.PolicyTimePeriodCondition
Operation | uint16
Description | string | The Operations to perform.
IN | boolean | true
ValueMap | string | 2, 3, 4, 5, 6, 7, 8, 9, 10, .., 0x8000..
Values | string | Rename PolicyRuleName, Add Tiers to Policy, Remove Tiers from Policy, Add InElements to Policy, Remove InElements from Policy, Update MaxPercentAllocated, Add PolicyTimePeriodCondition, Remove PolicyTimePeriodCondition, Modify PolicyTimePeriodCondition, DMTF Reserved, Vendor Specific
PolicyRuleName | string
Description | string | A new name for the policy rule. Effectively, renaming the policy rule.
IN | boolean | true
PolicyTimePeriodCondition | string
Description | string | If provided, it represents the time periods during which the policy is active. If not provided, the implementation decides.
EmbeddedInstance | string | CIM_PolicyTimePeriodCondition
IN | boolean | true
TierPolicySettingData | string
Description | string | If provided, it supplies additional information to incorporate in a policy rule. For example, the RulePriority.
EmbeddedInstance | string | CIM_TierPolicySettingData
IN | boolean | true
MaxPercentAllocated | uint16[]
ArrayType | string | Indexed
Description | string | The percentage of the capacity that is allocated from the corresponding storage tier. This array is index-correlated with the array Tiers.
IN | boolean | true
MaxValue | sint64 | 100
MinValue | sint64 | 0
ModelCorrespondence | string | ModifyStorageTierPolicyRule.Tiers
PUnit | string | percent
Units | string | Percent
InElements | CIM_ManagedElement[]
Description | string | Associate the elements to the policy.
IN | boolean | true
Tiers | CIM_StorageTier[]
ArrayType | string | Indexed
Description | string | List of storage tiers to associate to this policy.
IN | boolean | true
ModelCorrespondence | string | ModifyStorageTierPolicyRule.MaxPercentAllocated
Job | REF CIM_ConcreteJob
Description | string | Reference to the job (may be NULL if job is completed).
IN | boolean | false
OUT | boolean | true
PolicyRule | REF CIM_PolicyRule
Description | string | Reference to the PolicyRule to be modified.
IN | boolean | true
Required | boolean | true

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
AddToStorageTier | uint32 | CIM_TierService
ChangeAffectedElementsAssignedSequence | uint32 | CIM_Service
CreateStorageTier | uint32 | CIM_TierService
CreateTierDomain | uint32 | CIM_TierService
DeleteStorageTier | uint32 | CIM_TierService
DeleteTierDomain | uint32 | CIM_TierService
GetStorageTierCandidateObjects | uint32 | CIM_TierService
ModifyStorageTierDomainAssociation | uint32 | CIM_TierService
RemoveFromStorageTier | uint32 | CIM_TierService
RequestStateChange | uint32 | CIM_EnabledLogicalElement
StartService | uint32 | CIM_Service
StopService | uint32 | CIM_Service