# Class CIM_GroupMaskingMappingService
extends CIM_ControllerConfigurationService

Methods to work with masking groups.

### 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_ControllerConfigurationService
|
+--CIM_GroupMaskingMappingService

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | Methods to work with masking groups.
Experimental | boolean | true
Version | string | 2.23.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

#### CreateGroup (uint32)

#### Method Qualifiers (CreateGroup)

Name | Data Type | Value
--- | --- | ---
Description | string | This method creates a masking group.
ValueMap | string | 0, 1, 2, 3, 4, 5, .., 32768..65535
Values | string | Success, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, DMTF Reserved, Vendor Specific

#### Method Parameters (CreateGroup)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ConsistentLogicalUnitNumber | boolean
Description | string | A volume may be visible to the same initiator through multiple paths. Depending on which path the volume is visible to an initiator, the volume may have a different logical unit number. To ensure a volume has the same logical unit number to a given initiator regardless of the path, the property InitiatorMaskingGroup.ConsistentLogicalUnitNumber shall be set to true. The value of this parameter, if not NULL, is used to set the property InitiatorMaskingGroup.ConsistentLogicalUnitNumber when the initiator masking group is created. Use the intrinsic method ModifyInstance to change the value of the property InitiatorMaskingGroup.ConsistentLogicalUnitNumber after the masking group is created.
IN | boolean | true
DeleteOnEmpty | boolean
Description | string | If true and empty groups are allowed, the group will be deleted when the last element is removed from the group. If empty groups are not allowed, the group will be deleted automatically when the group becomes empty. If this parameter is not NULL, its value will be used to set the group's DeleteOnEmpty property. Use the intrinsic method ModifyInstance to change this property after the group is created.
IN | boolean | true
DeleteWhenBecomesUnassociated | boolean
Description | string | If true, the group will be deleted when the group is no longer associated with a masking view. This can happen when the masking view is deleted or the group is removed from the masking view. If this parameter is not NULL, its value will be used to set the group's DeleteWhenBecomesUnassociated property. Use the intrinsic method ModifyInstance to change this property after the group is created.
IN | boolean | true
GroupName | string
Description | string | If nameable, an end user relevant name for the group being created. If NULL or not nameable, then system assigns a name.
IN | boolean | true
Type | uint16
Description | string | The type of masking group to create.
IN | boolean | true
ValueMap | string | 0, 1, 2, 3, 4
Values | string | Unknown, Other, InitiatorMaskingGroup, TargetMaskingGroup, DeviceMaskingGroup
Members | CIM_ManagedElement[]
Description | string | List of elements to add to the masking group. For device masking groups the order is maintained. If NULL, the group will be empty -- if empty groups are supported.
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
MaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to the created group.
IN | boolean | false
OUT | boolean | true

#### DeleteGroup (uint32)

#### Method Qualifiers (DeleteGroup)

Name | Data Type | Value
--- | --- | ---
Description | string | Delete a masking group. Deleting a masking group does not delete its constituents.
ValueMap | string | 0, 1, 2, 3, 4, 5, .., 32768..65535
Values | string | Success, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, DMTF Reserved, Vendor Specific

#### Method Parameters (DeleteGroup)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
Force | boolean
Description | string | Attempt to delete the masking group even though it is associated to a masking view, or the group is not empty. The intent of the Force parameter is to reduce the chance of accidental deletion of a masking group.
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
MaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to a masking group.
IN | boolean | true
Required | boolean | true

#### AddMembers (uint32)

#### Method Qualifiers (AddMembers)

Name | Data Type | Value
--- | --- | ---
Description | string | Add members to an existing masking group.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 32768..65535
Values | string | Success, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Vendor Specific

#### Method Parameters (AddMembers)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
DeviceNumbers | string[]
Description | string | List of device numbers that correspond to Members. This property is applicable when the group consists of storage volumes.
IN | boolean | true
ModelCorrespondence | string | Members
Members | CIM_ManagedElement[]
Description | string | List of elements to add to the group. New members are added, in the order supplied, to the end of the existing members of the group. It is not an error, if a new member is already in the group.
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
MaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to an existing masking group.
IN | boolean | true
Required | boolean | true

#### RemoveMembers (uint32)

#### Method Qualifiers (RemoveMembers)

Name | Data Type | Value
--- | --- | ---
Description | string | Remove members from a masking group.
ValueMap | string | 0, 1, 2, 3, 4, 5, .., 32768..65535
Values | string | Success, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, DMTF Reserved, Vendor Specific

#### Method Parameters (RemoveMembers)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
DeleteOnEmpty | boolean
Description | string | If true and removal of the members causes the group to become empty, the group will be deleted. Note, if empty groups are not allowed, the group will be deleted automatically when the group becomes empty. If this parameter is not NULL, it overrides the group's property DeleteOnEmpty.
IN | boolean | true
Members | CIM_ManagedElement[]
Description | string | List of elements to remove from a group. Deleting all members of a group is equivalent to deleting the group if empty groups are not supported by the implementation.
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
MaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to an existing masking group.
IN | boolean | true
Required | boolean | true

#### CreateMaskingView (uint32)

#### Method Qualifiers (CreateMaskingView)

Name | Data Type | Value
--- | --- | ---
Description | string | Expose a group of SCSI logical units (such as RAID volumes or tape drives) to a group of initiators through a group of target ports, through one or more SCSIProtocolControllers (SPCs). If 0 is returned, the function completed successfully and no ConcreteJob instance is created. If 4096/0x1000 is returned, a ConcreteJob is started, a reference to which is returned in the Job output parameter.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 32768..65535
Values | string | Completed with No Error, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (CreateMaskingView)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
ElementName | string
Description | string | A user relevant name for the masking view. If NULL, the implementation assigns a name.
IN | boolean | true
DeviceNumbers | string[]
Description | string | List of device numbers that correspond to the elements of DeviceMaskingGroup. If this parameter is NULL, device numbers are assigned by the instrumentation.
IN | boolean | true
ModelCorrespondence | string | DeviceMaskingGroup
DeviceMaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to a group of devices.
IN | boolean | true
InitiatorMaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to a group of initiators.
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
ProtocolController | REF CIM_SCSIProtocolController
Description | string | A reference to the created SCSIProtocolController, which represents the masking view.
IN | boolean | false
OUT | boolean | true
TargetMaskingGroup | REF CIM_MaskingGroup
Description | string | Reference to a group of target ports.
IN | boolean | true

#### DeleteMaskingView (uint32)

#### Method Qualifiers (DeleteMaskingView)

Name | Data Type | Value
--- | --- | ---
Description | string | Delete a masking view, i.e. a SCSIProtocolControllers. Deleting a masking view may also delete the associated masking groups -- see the applicable capabilities and group properties. If 0 is returned, the function completed successfully and no ConcreteJob instance is created. If 4096/0x1000 is returned, a ConcreteJob is started, a reference to which is returned in the Job output parameter.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 32768..65535
Values | string | Completed with No Error, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (DeleteMaskingView)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
DeleteWhenBecomesUnassociated | boolean
Description | string | Override the setting of the groups' property DeleteWhenBecomesUnassociated with the value of this parameter.
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
ProtocolController | REF CIM_SCSIProtocolController
Description | string | A reference to the SCSIProtocolController to delete. The masking group associated with the view may also get deleted depending on the groups' applicable properties.
IN | boolean | true
Required | boolean | true

#### ModifyMaskingView (uint32)

#### Method Qualifiers (ModifyMaskingView)

Name | Data Type | Value
--- | --- | ---
Description | string | Modify a masking view by adding a masking group or by removing a masking group from the masking view. If 0 is returned, the function completed successfully and no ConcreteJob instance was created. If 0x1000 is returned, a ConcreteJob was started and a reference to this Job is returned in the Job output parameter. A return value of 1 indicates the method is not supported. All other values indicate some type of error condition.
ValueMap | string | 0, 1, 2, 3, 4, 5, 6, .., 4096, 4097..32767, 32768..65535
Values | string | Completed with No Error, Not Supported, Unspecified Error, Timeout, Failed, Invalid Parameter, In Use, DMTF Reserved, Method Parameters Checked - Job Started, Method Reserved, Vendor Specific

#### Method Parameters (ModifyMaskingView)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
Force | boolean
Description | string | If true, the client is not warned that the operation may render the masking view unusable.
IN | boolean | true
Operation | uint16
Description | string | Operation describes the type of modification to be made to the masking view.
IN | boolean | true
Required | boolean | true
ValueMap | string | 2, 3, .., 32768..65535
Values | string | Add Group, Remove Group, DMTF Reserved, Vendor Specific
DeviceNumbers | string[]
Description | string | This parameter applies to an "add group" operation. It is a list of device numbers that correspond to the elements of a MaskingGroup.
IN | boolean | true
ModelCorrespondence | string | MaskingGroup
Job | REF CIM_ConcreteJob
Description | string | Reference to the job (may be NULL if job is completed).
IN | boolean | false
OUT | boolean | true
MaskingGroup | REF CIM_MaskingGroup
Description | string | A reference to the masking group to add or to remove.
IN | boolean | true
ProtocolController | REF CIM_SCSIProtocolController
Description | string | The reference to the masking view to modify.
IN | boolean | true
Required | boolean | true

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
AttachDevice | uint32 | CIM_ControllerConfigurationService
ChangeAffectedElementsAssignedSequence | uint32 | CIM_Service
CreateProtocolControllerWithPorts | uint32 | CIM_ControllerConfigurationService
DeleteProtocolController | uint32 | CIM_ControllerConfigurationService
DetachDevice | uint32 | CIM_ControllerConfigurationService
ExposeDefaultLUs | uint32 | CIM_ControllerConfigurationService
ExposePaths | uint32 | CIM_ControllerConfigurationService
HideDefaultLUs | uint32 | CIM_ControllerConfigurationService
HidePaths | uint32 | CIM_ControllerConfigurationService
RequestStateChange | uint32 | CIM_EnabledLogicalElement
StartService | uint32 | CIM_Service
StopService | uint32 | CIM_Service