public Map<Integer,Set<String>> showTopology() throws NetworkDeviceControllerException {
  Map<Integer,Set<String>> peerDevicesMap=new HashMap<Integer,Set<String>>();
  SSHPrompt[] prompts={SSHPrompt.POUND,SSHPrompt.GREATER_THAN};
  StringBuilder buf=new StringBuilder();
  sendWaitFor(MDSDialogProperties.getString("MDSDialog.show.topology.cmd"),10000,prompts,buf);
  String[] lines=getLines(buf);
  Integer vsanId=null;
  String[] regex={MDSDialogProperties.getString("MDSDialog.show.topology.vsan.match"),MDSDialogProperties.getString("MDSDialog.show.topology.peer.ip.match")};
  String[] groups=new String[10];
  for (  String line : lines) {
    int index=match(line,regex,groups);
switch (index) {
case 0:
      vsanId=new Integer(groups[0]);
    break;
case 1:
  Set<String> peerDevicesIpAddr=peerDevicesMap.get(vsanId);
if (peerDevicesIpAddr == null) {
  peerDevicesIpAddr=Sets.newHashSet();
  peerDevicesMap.put(vsanId,peerDevicesIpAddr);
}
String peerDevice=groups[0] + groups[2];
peerDevicesIpAddr.add(peerDevice);
break;
}
}
return peerDevicesMap;
}

public Map < Integer , Set < String > > showTopology ( ) throws NetworkDeviceControllerException { Map < Integer , Set < String > > peerDevicesMap = new HashMap < Integer , Set < String > > ( ) ; SSHPrompt [ ] prompts = { SSHPrompt . POUND , SSHPrompt . GREATER_THAN } ; StringBuilder buf = new StringBuilder ( ) ; sendWaitFor ( MDSDialogProperties . getString ( "MDSDialog.show.topology.cmd" ) , 10000 , prompts , buf ) ; String [ ] lines = getLines ( buf ) ; Integer vsanId = null ; String [ ] regex = { MDSDialogProperties . getString ( "MDSDialog.show.topology.vsan.match" ) , MDSDialogProperties . getString ( "MDSDialog.show.topology.peer.ip.match" ) } ; String [ ] groups = new String [ 10 ] ; for ( String line : lines ) { int index = match ( line , regex , groups ) ; switch ( index ) { case 0 : vsanId = new Integer ( groups [ 0 ] ) ; break ; case 1 : Set < String > peerDevicesIpAddr = peerDevicesMap . get ( vsanId ) ; if ( peerDevicesIpAddr == null ) { peerDevicesIpAddr = Sets . newHashSet ( ) ; peerDevicesMap . put ( vsanId , peerDevicesIpAddr ) ; } String peerDevice = groups [ 0 ] + groups [ 2 ] ; peerDevicesIpAddr . add ( peerDevice ) ; break ; } } return peerDevicesMap ; }
return map vsan ' s peer devices ' ip address
