After talking with gdelhumeau, we came to the conclusion that we should somehow split the xwiki-platform-notifications-api module in multiple subparts.
This very issue aims to do so.
We can already think of an organization between the different submodules, we have :
- The components responsible of fetching the notifications of a user and applying different filters
- The components responsible of notifying a user, either through an RSS feed, an email or the notification center.
- The components responsible of managing the preferences, either of a user or, more globally, of the system.