private void initRemoteEigrpNeighbors( Map<String, Configuration> configurations, Topology topology) { if (!_remoteEigrpNeighborsInitialized) { _eigrpTopology = EigrpTopology.initEigrpTopology(configurations, topology); _remoteEigrpNeighborsInitialized = true; } }
private static SortedSet<VerboseEigrpEdge> getEigrpEdges( Map<String, Configuration> configs, Topology topology) { Network<EigrpInterface, EigrpEdge> eigrpTopology = EigrpTopology.initEigrpTopology(configs, topology); NetworkConfigurations nc = NetworkConfigurations.of(configs); SortedSet<VerboseEigrpEdge> eigrpEdges = new TreeSet<>(); for (Configuration c : configs.values()) { String hostname = c.getHostname(); for (Vrf vrf : c.getVrfs().values()) { eigrpEdges.addAll( vrf.getInterfaceNames().stream() .map(ifaceName -> new EigrpInterface(hostname, ifaceName, vrf.getName())) .filter(eigrpTopology.nodes()::contains) .flatMap(n -> eigrpTopology.inEdges(n).stream()) .map(edge -> new VerboseEigrpEdge(edge, edge.toIpEdge(nc))) .collect(ImmutableSortedSet.toImmutableSortedSet(Comparator.naturalOrder()))); } } return eigrpEdges; }
case EIGRP: Network<EigrpInterface, EigrpEdge> eigrpTopology = EigrpTopology.initEigrpTopology(configurations, topology); return getEigrpEdges(includeNodes, includeRemoteNodes, eigrpTopology); case IPSEC:
computeIpVrfOwners(true, computeNodeInterfaces(configurations)); Network<EigrpInterface, EigrpEdge> eigrpTopology = EigrpTopology.initEigrpTopology(configurations, topology); Network<IsisNode, IsisEdge> isisTopology = IsisTopology.initIsisTopology(configurations, topology);