1 karl 1.1.2.2 // Copyright (c) 2005 DMTF. All rights reserved.
2 [Version ( "2.10.0" ),
3 UMLPackagePath ( "CIM::Device::ProtocolController" ),
4 Description (
5 "A subclass of Capabilities that defines the Masking-related "
6 "capabilities of a ProtocolController." )]
7 class CIM_ProtocolControllerMaskingCapabilities : CIM_Capabilities {
8
9 [Description (
10 "A list of the valid values for "
11 "StrorageHardwareID.IDType. iSCSI IDs MAY use one of "
12 "three iSCSI formats - iqn, eui, or naa. This three "
13 "letter format is the name prefix; so a single iSCSI type "
14 "is provided here, the prefix can be used to further "
15 "refine the format." ),
16 ValueMap { "1", "2", "3", "4", "5" },
17 Values { "Other", "Port WWN", "Node WWN", "Host Name",
18 "iSCSI Name" },
19 ArrayType ( "Indexed" )]
20 uint16 ValidHardwareIdTypes[];
21
22 karl 1.1.2.2 [Description (
23 "An array of strings describing types for valid "
24 "StorageHardwareID.IDType. Used when the "
25 "ValidHardwareIdTypes includes 1 (\"Other\")." ),
26 ArrayType ( "Indexed" )]
27 string OtherValidHardwareIDTypes[];
28
29 [Description (
30 "An integer enumeration indicating the way that ports per "
31 "view (ProtocolController) are handled by the underlying "
32 "storage system." ),
33 ValueMap { "2", "3", "4" },
34 Values { "One Port per View", "Multiple Ports per View",
35 "All Ports share the same View" }]
36 uint16 PortsPerView = 2;
37
38 [Description (
39 "Set to true if this storage system allows the client to "
40 "specify the DeviceNumber parameter when calling "
41 "ControllerConfigurationService.AttachDevice() or specify "
42 "the DeviceNumbers parameter when calling "
43 karl 1.1.2.2 "ControllerConfigurationService.ExposePaths(). Set to "
44 "false if the implementation does not allow unit numbers "
45 "to vary for a ProtocolController. However, if set to "
46 "false and a Device is not the Dependent of a "
47 "ProtocolControllerForUnit association, the client MUST "
48 "provide a DeviceNumber parameter in "
49 "ControllerConfigurationService.AttachDevice or "
50 "ControllerConfigurationService.ExposePaths. If set to "
51 "false and the Device is already the Dependent of a "
52 "ProtocolControllerForUnit association, then the client "
53 "can omit the DeviceNumber parameter (or supply the same "
54 "value) in subsequent "
55 "ControllerConfigurationService.AttachDevice calls." )]
56 boolean ClientSelectableDeviceNumbers = true;
57
58 [Description (
59 "Set to true if this storage system supports the "
60 "AttachDevice method." )]
61 boolean AttachDeviceSupported;
62
63 [Description (
64 karl 1.1.2.2 "Set to true if this storage system limits configurations "
65 "to a single subject hardware ID per view. Otherwise, "
66 "multiple hardware ID types can be used. The default is "
67 "FALSE, that multiple ID types MAY be used in a single "
68 "view." )]
69 boolean OneHardwareIDPerView = false;
70
71 [Description (
72 "When set to false, different ProtocolContollers attached "
73 "to a LogicalPort can expose the same unit numbers. If "
74 "true, then this storage system requires unique unit "
75 "numbers across all the ProtocolControllers connected to "
76 "a LogicalPort." )]
77 boolean UniqueUnitNumbersPerPort = false;
78
79 [Description (
80 "Set to true if this storage system allows a client to "
81 "create a Privilege instance with PrivilegeGranted set to "
82 "FALSE." )]
83 boolean PrivilegeDeniedSupported = false;
84
85 karl 1.1.2.2 [Description (
86 "If true, this property indicates that a "
87 "Privilege/Identity pair MUST be specified when "
88 "CreateProtocolControllerWithPorts() is called. If false, "
89 "then the Privilege/Identity pair in "
90 "CreateProtocolControllerWithPorts() MUST NOT be set." )]
91 boolean ProtocolControllerRequiresAuthorizedIdentity = false;
92
93 [Description (
94 "If true, this property indicates that the Identity "
95 "parameter of CreateProtocolConntrollerWithPorts() MUST "
96 "contain a reference to a CIM_Collection (or subclass) or "
97 "to a CIM_Identity (or subclass). If ExposePathsSupported "
98 "is true, this property indicates the storage system "
99 "supports SystemSpecificCollections of "
100 "StorageHardwareIDs." )]
101 boolean ProtocolControllerSupportsCollections = false;
102
103 [Description (
104 "Set to true if this storage system supports the "
105 "ExposePaths and HidePaths methods." )]
106 karl 1.1.2.2 boolean ExposePathsSupported;
107
108 [Description (
109 "Set to true if this storage system supports the "
110 "CreateProtocolControllerWithPorts method." )]
111 boolean CreateProtocolControllerSupported;
112
113 [Description (
114 "The maximum number of ProtocolCOntrollerForUnit "
115 "associations that can be associated with a single "
116 "LogicalDevice (for example, StorageVolume). Zero "
117 "indicates there is no limit." )]
118 uint16 MaximumMapCount = 0;
119
120 [Description (
121 "Set to true if the instumentation allows a client to "
122 "create a configuration where an SPC has no "
123 "LogicalDevices associated via "
124 "CIM_ProtocolControllerForUnit associations." )]
125 boolean SPCAllowsNoLUs = false;
126
127 karl 1.1.2.2 [Description (
128 "Set to true if the instumentation allows a client to "
129 "create a configuration where an SPC has no target "
130 "SCSIProtocolEndpoints associated via "
131 "CIM_SAPAvailableForELement associations." )]
132 boolean SPCAllowsNoTargets = false;
133
134 [Description (
135 "Set to true if the instumentation allows a client to "
136 "create a configuration where an SPC has no "
137 "StorageHardwareIDs associated via "
138 "CIM_AuthorizedTarget/CIM_AuthorizedPrivilege/CIM_AuthorizedSubject."
139 )]
140 boolean SPCAllowsNoInitiators = false;
141
142 [Description (
143 "Set to true if it the instrumentation supports \'default "
144 "view\' SPCs that exposes logical units to all initiators "
145 "(so called \'promiscuous LUNs\'. Default view SPCs MUST "
146 "have be associated to a CIM_StorageHardwareID instance "
147 "with Name set to the null string. A target port MUST NOT "
148 karl 1.1.2.2 "be associated with more a single default view SPC. If "
149 "PortsPerView is \'All Ports share the same View\', then "
150 "at most one default view SPC MAY be associated with the "
151 "target system. If SPCAllowsNoLUs is true, the "
152 "instrumentation MAY instantiate a static default view "
153 "instance or let the client create one as needed using "
154 "ExposePaths. For other values of PortsPerView, all "
155 "default view SPC MUST share the same null-Name "
156 "CIM_StorageHardwareID instance." ),
157 ModelCorrespondence {
158 "CIM_ProtocolControllerMaskingCapabilities.PortsPerView" }]
159 boolean SPCSupportsDefaultViews = true;
160
161
162 };
|