University Transit Service at the University of Virginia is a fare-free transit service committed to providing safe, reliable, efficient, and friendly transit service to University of Virginia students, faculty, and staff. This project builds and queries a UVA Bus Routes database. It uses the UVA Devhub API to get a JSON of Bus information and then translate that into a list of Objects. From there, the project store that List of Objects in an SQLite database for persistence so that one can query the content.
There are 5 parts for this project:
Part 1: Configure JSON Parsing: Implement the method parseJsonConfigFile in Configuration.java to read and set values from a config.json file, including API endpoints and database name.
Part 2: Parsing WebService: Implement StopReader and BusLineReader classes to retrieve data from API endpoints specified in the configuration. Extract relevant data for stops and bus lines, constructing routes for each bus line.
Part 3: Database Operations: Implement DatabaseDriver to interact with an SQLite database. Create tables, insert data, query information, and handle exceptions such as rolling back changes if an error occurs.
Part 4: Submitting Database: Ensure the SQLite database file named bus_stops.sqlite is generated and stored in the project's root directory, containing data retrieved from API endpoints.
Part 5: Bus Line Service: Implement methods in BusLineService to utilize DatabaseDriver for functionality such as finding the closest bus stop to a given location and determining the recommended bus line between two stops based on shortest distance.
Log in or sign up for Devpost to join the conversation.