public WeightedPath buildPath()

in src/main/java/org/apache/commons/graph/shortestpath/PredecessorsList.java [75:95]


    public WeightedPath<V, WE, W> buildPath( V source, V target )
    {
        InMemoryWeightedPath<V, WE, W> path = new InMemoryWeightedPath<V, WE, W>( source, target, weightOperations, weightedEdges );

        V vertex = target;
        while ( !source.equals( vertex ) )
        {
            V predecessor = predecessors.get( vertex );
            if ( predecessor == null )
            {
                throw new PathNotFoundException( "Path from '%s' to '%s' doesn't exist", source, target );
            }
            WE edge = graph.getEdge( predecessor, vertex );

            path.addConnectionInHead( predecessor, edge, vertex );

            vertex = predecessor;
        }

        return path;
    }