eurofurence / ef-app_android

Eurofurence App (Android version)
MIT License
13 stars 5 forks source link

Convention Identifier Introduction #281

Closed Pinselohrkater closed 5 years ago

Pinselohrkater commented 5 years ago
Requinard commented 5 years ago

it feels strange to lock this up by convention identifier in the URL and build. Preferably (and RESTly), a get on app.eurofurence.org/api/ would get you the versions available and then the app itself would pick which version it needs. This is a lot nicer than the current way of hardcoding these parameters

Pinselohrkater commented 5 years ago

it feels strange to lock this up by convention identifier in the URL and build. Preferably (and RESTly), a get on app.eurofurence.org/api/ would get you the versions available and then the app itself would pick which version it needs. This is a lot nicer than the current way of hardcoding these parameters

Locking up a build artifact against a specific endpoint is intentional and desired.

If it's just about the string concatenation of "API url follows convention of BASE_PATH + CID"... I'd be up for just having the CID in the BuildConfig and move the API base path to Firebase Remote Config instead (again).

The backend is not specifically designed for multi-tenancy, so every version (EF24, EF25, ...) is an unique instance on an unique path with a dedicated hosting process. There's currently no API on a level 'above' that would enumerate available instances, and I wouldn't want to bootstrap & introduce that just for a single operation that currently isn't any more complex than a simple string concatenation.