Recent commits have introduced various changes that impact the CalendarService, Stream, and Event services, including refactoring, new route mappings, and handling exceptions. This issue outlines the tasks that need to be completed to finalize these updates and ensure everything functions correctly.
Tasks
1. Refactoring and Service Updates
Refactor and move code from CalendarServiceImpl to GoogleOauth2Service for better separation of concerns.
Review and test the refactoring to ensure no functionality is broken during the migration.
2. Route Mappings and Endpoints
Create route mapping for retrieving data required to create a stream.
Update the route mapping in UserEventController for addNewEventAttendee() from PUT to POST to follow RESTful conventions.
Add route mappings to allow users to delete events or streams. Ensure that appropriate authorization checks are in place.
3. Exception Handling
Implement and ensure exceptions are correctly thrown when users attempt to delete ongoing events.
Review and enhance exception classes to cover different failure scenarios, such as unauthorized actions or invalid requests.
4. Schema and DTO Changes
Rename stream_type to stream_source across the codebase and update relevant documentation.
Update the liquibase SQL script and Member class to include the is_internal field, indicating whether a user is an internal member of the company or organization.
Add fields for designating internal users in relevant DTOs and services.
5. Transactional and Localization Improvements
Add @Transactional annotations to methods that modify data to ensure consistency and rollback capabilities in case of errors.
Incorporate localization messages across updated and new endpoints to support internationalization.
6. Documentation and Code Quality
Add or update documentation for all new methods, endpoints, and classes to provide clear and concise guidance on their usage.
Review the codebase for redundant or outdated code and refactor as necessary to improve readability and maintainability.
Acceptance Criteria
All refactorings are complete, and no existing functionality is broken.
All new and updated route mappings are correctly implemented and tested.
Exception handling is robust and covers all relevant scenarios.
All schema and DTO updates are reflected correctly in the codebase.
Transactional safety is ensured in all modifying methods.
Localization is consistent across all user-facing messages.
Documentation is updated and clear for all new or modified components.
Additional Notes
Ensure all changes are thoroughly tested, including edge cases for new exception handling.
Double-check that all route mappings conform to RESTful best practices and the overall API design of the project.
Validate that localization messages are correctly loaded and used based on the user's locale settings.
Overview
Recent commits have introduced various changes that impact the
CalendarService
,Stream
, andEvent
services, including refactoring, new route mappings, and handling exceptions. This issue outlines the tasks that need to be completed to finalize these updates and ensure everything functions correctly.Tasks
1. Refactoring and Service Updates
CalendarServiceImpl
toGoogleOauth2Service
for better separation of concerns.2. Route Mappings and Endpoints
UserEventController
foraddNewEventAttendee()
fromPUT
toPOST
to follow RESTful conventions.3. Exception Handling
4. Schema and DTO Changes
stream_type
tostream_source
across the codebase and update relevant documentation.Member
class to include theis_internal
field, indicating whether a user is an internal member of the company or organization.5. Transactional and Localization Improvements
@Transactional
annotations to methods that modify data to ensure consistency and rollback capabilities in case of errors.6. Documentation and Code Quality
Acceptance Criteria
Additional Notes