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

Implement Service-Agnostic Context for Notification Service #18

Open
2 tasks
iammuho opened this issue Aug 30, 2023 · 0 comments
Open
2 tasks

Implement Service-Agnostic Context for Notification Service #18

iammuho opened this issue Aug 30, 2023 · 0 comments
Labels
enhancement New feature or request

Comments

@iammuho
Copy link
Owner

iammuho commented Aug 30, 2023

The goal of this issue is to build a service-agnostic context for the Notification Service from scratch. By employing a factory pattern, we aim to provide the Notification Service the flexibility to adapt different notification service providers (like Firebase, OneSignal, etc.) without impacting the internal workings of the system.

Tasks:

  • Define an interface that outlines the essential methods for notification operations such as Send, Receive, Delete, UpdateStatus, etc.
  • Implement a factory pattern to instantiate the appropriate notification service provider based on configuration or runtime requirements.
  • Develop an initial implementation using a placeholder or dummy notification service that adheres to the defined interface.
  • Integrate this factory and interface into the existing Notification Service codebase.
  • Write unit tests to confirm that the Notification Service works as expected with the dummy implementation.

Acceptance Criteria:

  • Notification Service should be able to operate with different notification service providers without changes to the internal services.
  • Unit tests confirm that the new implementation meets the expected behavior.
@iammuho iammuho added the enhancement New feature or request label Aug 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant