val id: String

Unique local identifier of the route instance.

For routes which contain server-side UUID it's equal to: UUID + "#" + routeIndex, for example: d77PcddF8rhGUc3ORYGfcwcDfS_8QW6r1iXugXD0HOgmr9CWL8wn0g==#0. For routes which do not have the server-side UUID, for example routes which were generated onboard, it's equal to: "local@" + generateUuid() + "#" + routeIndex, for example: local@84438c3e-f608-47e9-88cc-cddf341d2fb1#0.

There can be two or more NavigationRoutes that have an equal ID but fail the equals check. This can occur if a route has been refreshed and contains updated:

  • RouteLeg.annotation

  • RouteLeg.incidents

  • RouteLeg.closures

  • duration fields

If two NavigationRoutes do have the same ID, they are guaranteed to be originating from the same route response, and follow the exact same path.