private void ProcessHardwareItemSwitching( Switching switching )
{
if (switching != null)
{
var g = new ListViewGroup( "Switching", "Switching" );
lvNetworkPaths.Groups.Add( g );
foreach (object item in switching.Items)
{
if (item != null)
{
var idesc = item as Switch;
if (idesc != null)
{
Interface interfaces = idesc.Interface;
if (interfaces != null)
{
foreach (Port port in interfaces.Ports)
{
if (port != null)
{
var xpath = new StringBuilder( "//" );
xpath.Append( XPathManager.DeterminePathName( _hardwareItemDescription ) );
xpath.Append( "/" ).Append( XPathManager.DeterminePathName( switching ) );
xpath.Append( "/" ).Append( XPathManager.DeterminePathName( item ) );
xpath.Append( "[@name=\"" )
.Append( idesc.name )
.Append( "\"]" );
xpath.Append( "/" ).Append( XPathManager.DeterminePathName( interfaces ) );
xpath.Append( "/" ).Append( XPathManager.DeterminePathName( interfaces.Ports ) );
xpath.Append( "/" )
.Append( XPathManager.DeterminePathName( port ) );
xpath.Append( "[@name=\"" )
.Append( port.name )
.Append( "\"]" );
string pathValues = NetworkNode.ExtractPathValues( xpath.ToString() );
var lvi = new ListViewItem( pathValues );
lvi.Tag = xpath.ToString();
lvi.Group = g;
lvNetworkPaths.Items.Add( lvi );
}
}
}
}
}
}
}
}