Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/flameshine/rx-hotels
There is a bunch of databases that contain information about hotels, the application should query them, then fetch properties for obtained hotels and prepare them for displaying to a user.
https://github.com/flameshine/rx-hotels
Last synced: 9 days ago
JSON representation
There is a bunch of databases that contain information about hotels, the application should query them, then fetch properties for obtained hotels and prepare them for displaying to a user.
- Host: GitHub
- URL: https://github.com/flameshine/rx-hotels
- Owner: flameshine
- Created: 2022-08-15T19:04:59.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-08-15T19:11:18.000Z (over 2 years ago)
- Last Synced: 2024-11-20T21:53:45.826Z (2 months ago)
- Language: Kotlin
- Size: 56.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# rx-hotels
## General description
There is a bunch of databases that contain information about hotels, the application should query them, then fetch properties for obtained hotels and prepare them for displaying to a user.
## Task statement
1. Asynchronously consolidate hotels from `ExpediaDataSource` and `TripadvisorDataSource` into a single list
2. If either query fails, you should log the error and return data from `LegacyDataSource` instead
3. Filter out non-available hotels
4. For each hotel load properties asynchronously
5. An error should be logged and an empty list returned in case of error during a hotel processing
6. All loaded properties should be aggregated into a single list and sorted by rating in the descendant order
7. Display obtained and sorted properties to a user
8. Log an error message in case some unexpected error happens
9. Database queries should be performed in IO thread pool
10. Sorting properties ought to be done in the computation thread-pool
11. Also, user should be able to cancel all running operations
12. K O T L I N