Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Back end development #72

Open
wants to merge 52 commits into
base: main
Choose a base branch
from

Conversation

KadeStyron
Copy link
Contributor

Springboot BusAppController

justinquinnb and others added 30 commits November 7, 2023 23:06
Updated ApiService and created Database Service
Added a method for the FinalCalculate stored procedure to DatabaseService
Added the routeSchedule package I had been personally developing. Began implementing the remaining fields and methods specified in our UML diagram.
Replaced the routeSchedule README to Markdown to improve readability
Fully replaced method block comments with JavaDoc comments in CustomSession and DailySchedule.
Added JavaDoc comments to CustomSession and DailySchedule class.
Made minor visibility tweak to some methods and rephrased some older comments for clarity.
-Replaced all remaining method block comments in routeSchedule package with JavaDoc comments
-Added new JavaDoc comments to all routeSchedule classes
-Made minor adjustments to existing code to improve readability and reduce redundancy
-Create new BasicUiDisplayable interface to facilitate object representation in UI components
-Begin implementing BasicUiDisplayable interface
-Begin replacing/adding JavaDoc comments where necessary
-Outline new data retrieval methods for DatabaseService
-Begin roughly implementing what the main backend loop may look like (including startup procedures and data updating)
-Redefine Route constructor to self-populate fields derived from API data
-Implement methods to facilitate Route construction and general data usage
-Finish getSubHeader() implementation for Stop objects
…kend loop + various tweaks

-Begin changes to some database and API methods to better fit with the backend engine
-Replace some more block comments with JavaDoc comments
-Minor changes to ListItemData interface and its implementations to improve clarity and fulfill some TODOs
-Add remaining implementations of ListItemData methods to Bus, Route, and Stop classes
-Add an enumerable outlining valid measurement systems for use in UiContext
-Add methods to retrieve all Stops and Routes stored in the database
-Add methods to count Stop and Route database records
-Create ParentContainer and DisplayableObject types to label data types intended for frontend display and specify the contexts in which the data may be shown
-Begin outlining changes to ApiService methods
-Complete implementation of the DataUpdater TimerTask
-Update Route, Stop, and Bus toString methods to reflect new fields and better present existing ones
-Add minor, missing methods for later use
-Correct minor typos in JavaDoc comments
-Adjust some constant names to adhere to all-caps convention
-Rename ospbusapp package to busAppCore, containing the core data structures and classes that manage data at runtime (database, API, engine, etc)
-Optimize imports
Account for the time that elapses since a Bus' secondsTillArrival field is updated from the API in the field's getter method
-Allow changes to Route data stored in the database to automatically take effect at midnight, removing the need to restart the program entirely. Maintains consistency with Stops and Buses, whose data is always pulled from a mutable source.
-Implement a method to put new database data into an existing Route's fields
-Implement a method to parse the '-'-delimited stop ID String stored in the database
-Route and Stop data are now exclusively stored in the database and obtained/updated/instantiated with similar algorithms
-Packages now include JavaDoc
Add route schedule system, methods & interfaces to make data useful to frontend, lay out main loop
Added some possible code to update reference for bus data map. Code might need some revision, but general logic should be good.
Added my name as a developer
route, bus, and stop classes are put into a new package and will be moved to main
Deletion of Backend/demo and moving of BusSpringWeb and Springboot Controller
Moving Backend/demo springboot files to busapp core folder
HeliumYang and others added 22 commits February 19, 2024 11:36
-Clean up existing code
-Add JavaDoc to my authored components
-Rename classes to better distinguish them from others
-Re-group classes into logical packages
Sync JQB-Front-End-Development to jqb/main
Sync JQB-Back-End-Development with jqb/main
-Prepare classes for modification by bringing backend classes to the frontend project
-Copy and modify classes from the backend to map SpringBoot responses into usable data and enable development of reliant UI components
-Outline example generation for UI testing without SpringBoot calls
-Remove dataDisplay package and related functionalities
-Implement random Route and Stop creation for UI testing
-Bus generation still W.I.P.
-Finish implementation of Example Data Generator used to test data-dependent UI components without depending on live data from the backend
-Clean up old GitHub merge issues
-Test and complete example data generator
-Begin work on Live Bus Overview UI component
-Bring over and slightly modify InstantBusModel from the frontend to provide a realistic model of the UGA Bus System at a given instant
-Begin work on a LiveBusModel class to generate models that are maintained over time,  providing even more realistic data
-Refactor bus data source classes to facilitate addition of new data sources and allow easy swaps with a single line change
-Remove leftover helper methods from previously-removed DataDisplay implementations
-Improve file organization
-Add package-info to all packages
-Optimize imports
Merge JQB-Dev branches into ACM-Backend
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants