summaryrefslogtreecommitdiffstats
path: root/Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof
diff options
context:
space:
mode:
Diffstat (limited to 'Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof')
-rw-r--r--Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof132
1 files changed, 132 insertions, 0 deletions
diff --git a/Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof b/Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof
new file mode 100644
index 0000000..a60fc5b
--- /dev/null
+++ b/Schemas/CIM236/DMTF/Device/CIM_PassThroughModule.mof
@@ -0,0 +1,132 @@
+// Copyright (c) 2009 DMTF. All rights reserved.
+ [Version ( "2.22.0" ),
+ UMLPackagePath ( "CIM::Device::Controller" ),
+ Description (
+ "A device that is a replacement for physical cables and allows "
+ "internal network physical ports in a chassis or rack to be "
+ "made accessible from the external network. This may a fixed "
+ "internal port to external port relationship, or a configurable "
+ "mapping of internal ports to output ports via a cross-point "
+ "switching function. The mapping between an internal and "
+ "external port is modeled using the InternalPorts and "
+ "ExternalPorts array properties. Corresponding array indices of "
+ "the InternalPorts and ExternalPorts properties shall contain "
+ "the port number of the internal port and external port, "
+ "respectively in a mapping pair. Usage of this class is "
+ "appropriate when modeling a simple n x n pass through module "
+ "where the protocols supported by the module are not the target "
+ "of management. Implementations wishing to enable management of "
+ "the network function should instrument the appropriate device "
+ "and network models. The tie into the device and network models "
+ "is accomplished by correlating the port numbers in this class\' "
+ "internal and external port arrays with CIM_NetworkPort\'s "
+ "PortNumber property. The following is an example of how this "
+ "class could be used: \n"
+ "For a given instance, the value of NumberOfPorts is 3. This "
+ "indicates that there are 3 internal ports and 3 external "
+ "ports. Internal port 2 is mapped to external port 3. Internal "
+ "ports 1 and 3 are not mapped to an external port. External "
+ "ports 1 and 2 are not mapped to internal ports. For this "
+ "instance the length of the InternalPorts and ExternalPorts "
+ "arrays shall both be one. The first array position in "
+ "InternalPortshall contain the value 2. The first array "
+ "position in ExternalPorts shall contain the value 3." )]
+class CIM_PassThroughModule : CIM_LogicalModule {
+
+ [Description (
+ "An enumeration of the link technologies that can be "
+ "passed- through by this device. When set to 1 (\"Other\"), "
+ "the property OtherLinkTechnologies contains string "
+ "descriptions of the alternative link types." ),
+ ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
+ "10", "11", "12..32767", "32768..65535" },
+ Values { "Unknown", "Other", "Ethernet", "IB", "FC", "FDDI",
+ "ATM", "Token Ring", "Frame Relay", "Infrared",
+ "BlueTooth", "Wireless LAN", "DMTF Reserved",
+ "Vendor Specified" },
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence {
+ "CIM_PassThroughModule.OtherLinkTechnologies" }]
+ uint16 LinkTechnologies[];
+
+ [Description (
+ "An array of string values describing the supported "
+ "technologies when an entry in the LinkTechnologies array "
+ "is set to 1, \"Other\"." ),
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence { "CIM_PassThroughModule.LinkTechnologies" }]
+ string OtherLinkTechnologies[];
+
+ [Description (
+ "Boolean indicating if the port assignments on this "
+ "switch are software programmable or not." )]
+ boolean IsProgrammable = false;
+
+ [Description (
+ "A PassThroughModule is a simple module with 1-1 "
+ "correspondence between internal and external ports. This "
+ "number represents the number of external ports. By "
+ "virtue of there being a 1-1 correspondence of ports, it "
+ "also represents the number of internal ports. \n"
+ "The ports are numbered 1 through N." )]
+ uint16 NumberOfPorts;
+
+ [Description (
+ "An indexed array containing the internal port numbers. "
+ "Corresponding external ports are in the ExternalPorts "
+ "array. Only internal ports which are mapped to an "
+ "external port shall appear in the array." ),
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence { "CIM_PassThroughModule.ExternalPorts",
+ "CIM_NetworkPort.PortNumber" }]
+ uint16 InternalPorts[];
+
+ [Description (
+ "An indexed array containing the external ports. "
+ "Corresponding internal ports are in the InternalPorts "
+ "array. Only external ports which are mapped to an "
+ "internal port shall appear in the array." ),
+ ArrayType ( "Indexed" ),
+ ModelCorrespondence { "CIM_PassThroughModule.InternalPorts",
+ "CIM_NetworkPort.PortNumber" }]
+ uint16 ExternalPorts[];
+
+
+ [Description (
+ "If the switch is software programmable, then this method "
+ "is called to assign an internal port to an external "
+ "port. \n"
+ "If 0 is returned, the requested status of the mapping of "
+ "InternalPort and ExternalPort is in effect. That is, an "
+ "attempt to unmap two ports that are not mapped to any "
+ "other ports or an attempt to map two ports which are "
+ "already mapped to each other shall return 0, because the "
+ "resultant state of the mapping is equivalent to the "
+ "client request. For a mapping operation, if either "
+ "target port is already mapped to a different port, the "
+ "implementation shall first unmap it. An attempt to unmap "
+ "two ports that are not mapped to each other shall fail "
+ "with an error of \"Not Mapped\"." ),
+ ValueMap { "0", "1", "2", "3", "4", "5..32767", "32768..65535" },
+ Values { "Completed with No Error", "Not Supported",
+ "Unknown/Unspecified Error", "Busy", "Not Mapped",
+ "DMTF Reserved", "Vendor Reserved" }]
+ uint32 AssignPorts(
+ [IN, Description (
+ "Boolean indicating if the ports are to be unmapped "
+ "or mapped. If \"True\", InternalPorts and "
+ "ExternalPorts shall be updated to contain a "
+ "mapping of InternalPort to ExternalPort. If "
+ "\"False\", InternalPorts and ExternalPorts shall "
+ "be updated to remove the mapping if one exists." )]
+ boolean Mapped,
+ [IN, Description (
+ "The mapping for this internal port shall be updated."
+ )]
+ uint16 InternalPort,
+ [IN, Description (
+ "The mapping for this external port shall be updated."
+ )]
+ uint16 ExternalPort);
+
+};