This pull request introduces SES (Simple Email Service) functionality for sending and verifying email identities and incorporates several enhancements, bug fixes, and documentation updates across the application.
Key Changes
SES Email Identity Verification:
Implemented SesService and SesController to manage sending and verifying email identity requests through AWS SES.
Added VerifyEmailIdentityDto and VerifyEmailIdentityResponse to facilitate the email identity verification process.
Documentation Updates:
Added comprehensive and detailed documentation for AclRole and AclScopeType to improve code understanding and maintainability.
Service Account Enhancements:
Integrated the service account delegated email address feature.
Updated calendar sharing functionality to include service account delegated authority email if the calendar creator is an internal member of the organization.
Bug Fixes:
Resolved a sign-in bug in AuthenticationServiceImpl and CustomAuthenticationProvider.
Fixed an issue with creating default event attendees or guests based on organizer's details.
Route and Request Updates:
Renamed {id} path variable in CalendarController routes to {calendarId} for clarity.
Modified ShareCalendarWithUserRequest to include the email address of the intended calendar creator.
Allowed empty array lists for CreateCalendarEventDto.eventAttendeesOrGuests.
Updated CreateCalendarRequest to include the creator's email address.
Additional Enhancements:
Added Member.isInternalEmailOrEmailIsAnOriginEmail() method for verifying internal email addresses.
Enhanced localized responses for route handlers in ObjectController.
Introduced Oauth2AuthorizationTest for basic authorization testing to validate access tokens, oauth2AuthorizationId, and refresh tokens.
Technical Details
Refactored components to centralize common implementations in StreamService.
Added final modifiers to variables and method parameters for immutability and consistency.
Updated DTO and response classes to better reflect their usage within the application context.
Testing
Comprehensive tests have been added, including Oauth2AuthorizationTest for verifying OAuth2 authorization workflows.
Additional unit tests have been implemented to ensure the new SES functionality and various bug fixes operate as expected.
Related Commits
commit 885f90d7e02a11e0a9077992f963bcf415c3431b
commit 3ef4e0d176b43f18eb64d6f1efe80a1e1eb6793a
Checklist
[x] Implement SES email identity verification.
[x] Update documentation for AclRole and AclScopeType.
[x] Fix identified bugs in authentication and calendar/event handling.
[x] Refactor and enhance request handling for calendars and streams.
[x] Conduct thorough testing of all new and modified features.
Additional Notes
Please review the changes and test thoroughly to ensure all functionalities work as intended. Feedback and suggestions for further improvements are welcome.
Summary
This pull request introduces SES (Simple Email Service) functionality for sending and verifying email identities and incorporates several enhancements, bug fixes, and documentation updates across the application.
Key Changes
SES Email Identity Verification:
SesService
andSesController
to manage sending and verifying email identity requests through AWS SES.VerifyEmailIdentityDto
andVerifyEmailIdentityResponse
to facilitate the email identity verification process.Documentation Updates:
AclRole
andAclScopeType
to improve code understanding and maintainability.Service Account Enhancements:
Bug Fixes:
AuthenticationServiceImpl
andCustomAuthenticationProvider
.Route and Request Updates:
{id}
path variable inCalendarController
routes to{calendarId}
for clarity.ShareCalendarWithUserRequest
to include the email address of the intended calendar creator.CreateCalendarEventDto.eventAttendeesOrGuests
.CreateCalendarRequest
to include the creator's email address.Additional Enhancements:
Member.isInternalEmailOrEmailIsAnOriginEmail()
method for verifying internal email addresses.ObjectController
.Oauth2AuthorizationTest
for basic authorization testing to validate access tokens,oauth2AuthorizationId
, and refresh tokens.Technical Details
StreamService
.Testing
Oauth2AuthorizationTest
for verifying OAuth2 authorization workflows.Related Commits
commit 885f90d7e02a11e0a9077992f963bcf415c3431b
commit 3ef4e0d176b43f18eb64d6f1efe80a1e1eb6793a
Checklist
AclRole
andAclScopeType
.Additional Notes
Please review the changes and test thoroughly to ensure all functionalities work as intended. Feedback and suggestions for further improvements are welcome.