Committed by
Gerrit Code Review
Fixed PathManager cost for edge-to-edge path.
Change-Id: I6a6a637839e32159e76df80d721f29fca83bf5ce
Showing
1 changed file
with
6 additions
and
1 deletions
| ... | @@ -265,18 +265,23 @@ public class PathManager implements PathService { | ... | @@ -265,18 +265,23 @@ public class PathManager implements PathService { |
| 265 | // Produces a direct edge-to-edge path. | 265 | // Produces a direct edge-to-edge path. |
| 266 | private Path edgeToEdgePath(EdgeLink srcLink, EdgeLink dstLink, Path path) { | 266 | private Path edgeToEdgePath(EdgeLink srcLink, EdgeLink dstLink, Path path) { |
| 267 | List<Link> links = Lists.newArrayListWithCapacity(2); | 267 | List<Link> links = Lists.newArrayListWithCapacity(2); |
| 268 | + double cost = 0; | ||
| 269 | + | ||
| 268 | // Add source and destination edge links only if they are real and | 270 | // Add source and destination edge links only if they are real and |
| 269 | // add the infrastructure path only if it is not null. | 271 | // add the infrastructure path only if it is not null. |
| 270 | if (srcLink != NOT_HOST) { | 272 | if (srcLink != NOT_HOST) { |
| 271 | links.add(srcLink); | 273 | links.add(srcLink); |
| 274 | + cost++; | ||
| 272 | } | 275 | } |
| 273 | if (path != null) { | 276 | if (path != null) { |
| 274 | links.addAll(path.links()); | 277 | links.addAll(path.links()); |
| 278 | + cost += path.cost(); | ||
| 275 | } | 279 | } |
| 276 | if (dstLink != NOT_HOST) { | 280 | if (dstLink != NOT_HOST) { |
| 277 | links.add(dstLink); | 281 | links.add(dstLink); |
| 282 | + cost++; | ||
| 278 | } | 283 | } |
| 279 | - return new DefaultPath(PID, links, 2); | 284 | + return new DefaultPath(PID, links, cost); |
| 280 | } | 285 | } |
| 281 | 286 | ||
| 282 | // Produces a direct edge-to-edge path. | 287 | // Produces a direct edge-to-edge path. | ... | ... |
-
Please register or login to post a comment