Source code for insights.combiners.mlx4_port

"""
Mlx4Port Combiner for the Mlx4Port Parser
=========================================

Combiner for the :class:`insights.parsers.mlx4_port.Mlx4Port` parser.

This parser is multioutput, one parser instance for each port
file.  This combiner puts all of them back together and presents
them as a dict where the keys are the port names, and the contents
of the port name file are the lines in each file stored as a list.

This class inherits all methods and attributes from the ``dict`` object.

Examples:
    >>> type(mlx4port)
    <class 'insights.combiners.mlx4_port.Mlx4Port'>
    >>> mlx4port['mlx4_port1']
    ['ib']
    >>> sorted(mlx4port.keys())
    ['mlx4_port1', 'mlx4_port2']

"""

from .. import combiner
from insights.parsers.mlx4_port import Mlx4Port as Mlx4PortParser


[docs] @combiner(Mlx4PortParser) class Mlx4Port(dict): """ Combiner for the mlx4_port parser. """ def __init__(self, mlx4_port): super(Mlx4Port, self).__init__() for port in mlx4_port: self.update({port.name: port.contents})