This pull request includes significant refactoring and enhancements to improve the handling of events, streams, and live broadcasts within the application. Key changes involve updates to controllers, services, DTOs, and response classes, as well as the addition of new route mappings and localization updates. These modifications aim to streamline code structure, improve functionality, and enhance the overall user experience.
Summary of Changes
1. Addition of .gitignore for Sensitive Files
Added a .gitignore file to exclude script files containing sensitive information for various environments (development, staging, production).
2. Localization Updates
Added localization message keys to CreateStreamResponse.
Updated localization files (messages_en_US.properties and messages_fr.properties) with new message keys for better internationalization support.
3. Controller and Route Mapping Updates
Moved rescheduleEvent() method from EventController to UserEventController for better routing logic.
Added LiveBroadcastController with route mappings to facilitate actions through the Live Broadcast API.
Introduced UserLiveBroadcastController to allow users to manage and interact with their created broadcasts or live streams.
4. DTO and Response Class Renaming
Renamed DTOs for clarity and to reduce redundancy:
UpdateEventVisibilityDto.java to UpdateEventOrStreamVisibilityDto.
ProcessAttendeeRequestToJoinEventDto.java to ProcessAttendeeRequestToJoinEventOrStreamDto.
Added new response classes:
DeletedStreamResponse for handling stream deletions.
NotAttendingStreamResponse for users opting not to attend events.
ProcessAttendeeRequestToJoinStreamResponse and UpdateStreamVisibilityResponse.
5. Service Layer Enhancements
Refactored EventServiceImpl to improve code organization, modularity, and maintainability.
Updated LiveBroadcastService and LiveBroadcastServiceImpl with new interface methods and initial skeleton implementations to be developed further.
Refactored YouTubeChannelService and YouTubeLiveBroadcastService to address bugs and improve service functionality.
Added static methods in YouTubeVideoPart to enable easier reuse of constants across services.
6. New Methods and Functionalities
Added StreamAttendee.setIsNotAttending() method, allowing users to indicate their decision not to attend a previously joined event or stream.
7. Documentation Improvements
Added comprehensive documentation to new and updated methods to ensure clarity and facilitate easier maintenance.
Testing
Ensured that all new and modified functionalities were tested to verify correctness.
Conducted localization tests to confirm message keys are correctly applied in CreateStreamResponse and other relevant classes.
Next Steps
Complete the implementation of skeleton methods in LiveBroadcastServiceImpl.
Further testing and validation of the refactored services and controllers.
Address any feedback or issues identified during the code review process.
Description
This pull request includes significant refactoring and enhancements to improve the handling of events, streams, and live broadcasts within the application. Key changes involve updates to controllers, services, DTOs, and response classes, as well as the addition of new route mappings and localization updates. These modifications aim to streamline code structure, improve functionality, and enhance the overall user experience.
Summary of Changes
1. Addition of
.gitignore
for Sensitive Files.gitignore
file to exclude script files containing sensitive information for various environments (development, staging, production).2. Localization Updates
CreateStreamResponse
.messages_en_US.properties
andmessages_fr.properties
) with new message keys for better internationalization support.3. Controller and Route Mapping Updates
rescheduleEvent()
method fromEventController
toUserEventController
for better routing logic.LiveBroadcastController
with route mappings to facilitate actions through the Live Broadcast API.UserLiveBroadcastController
to allow users to manage and interact with their created broadcasts or live streams.4. DTO and Response Class Renaming
UpdateEventVisibilityDto.java
toUpdateEventOrStreamVisibilityDto
.ProcessAttendeeRequestToJoinEventDto.java
toProcessAttendeeRequestToJoinEventOrStreamDto
.DeletedStreamResponse
for handling stream deletions.NotAttendingStreamResponse
for users opting not to attend events.ProcessAttendeeRequestToJoinStreamResponse
andUpdateStreamVisibilityResponse
.5. Service Layer Enhancements
EventServiceImpl
to improve code organization, modularity, and maintainability.LiveBroadcastService
andLiveBroadcastServiceImpl
with new interface methods and initial skeleton implementations to be developed further.YouTubeChannelService
andYouTubeLiveBroadcastService
to address bugs and improve service functionality.YouTubeVideoPart
to enable easier reuse of constants across services.6. New Methods and Functionalities
StreamAttendee.setIsNotAttending()
method, allowing users to indicate their decision not to attend a previously joined event or stream.7. Documentation Improvements
Testing
CreateStreamResponse
and other relevant classes.Next Steps
LiveBroadcastServiceImpl
.