chairemobilite / transition

Transition is a modern new approach to transit planning. It's a web application to model, simulate and plan public transit and alternative transportation.
http://transition.city
MIT License
20 stars 13 forks source link

routing: Allow service manager to receive an array of engines #980

Closed tahini closed 3 weeks ago

tahini commented 3 weeks ago

This allows clients to specify various routing engines, in order of preference, some of which may not apply to all modes. Only the first available one will be returned by the RoutingServiceManager.

greenscientist commented 3 weeks ago

What is the intent of this? I don't see why it's useful

tahini commented 3 weeks ago

This is part of the calculation refactoring. It will allow to more transparently support transit or routing engines together. The RoutingServiceManager will pick whichever applies first

tahini commented 3 weeks ago

It's just so the callers don't have to worry about whether the request is for transit or routing, but just ask its modes and engines and the calculation will know what to do with it.

greenscientist commented 3 weeks ago

Do we really want to expose this to the client? I was thinking the client only ask for a mode, then the backend pick the engine for this specific mode.

tahini commented 3 weeks ago

Transition supporte déjà le mode manuel et engine selon si on veut forcer le passage sur une route non-existente, donc non, on ne peut pas vraiment juste laisser le backend décider. En tout cas, pas à moins de faire du code custom du côté de Transition pour l'édition de Path

greenscientist commented 3 weeks ago

And what would be an exemple for this use case?

tahini commented 3 weeks ago

I'll put this commit as part of the routing calculation refacotirng PR later