Hey,
First off, thanks everyone for your interest and ideas!
Here are my thoughts on architecting how to make the app deal with multiple locations and web services:
- Make a generic abstract class that is to be used for data sources
- Each data source class could fetch information from a specific service in a specific country
- The app would instantiate every class
- When the user selects his/her starting point and destination, the app would query these objects to see which one is for the given country, and then it would query the web services through those instances that are for the country selected
This could make the app itself independent of the actual data sources.
Every one of us could implement such a class for his/her country, and we could join forces to develop the rest of the app.
The cab support could be then implemented in a similar manner too.
What do you think?