[
https://issues.apache.org/jira/browse/JAMES-4203?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benoit Tellier closed JAMES-4203.
---------------------------------
Resolution: Fixed
> Ability to write listener for Identities
> ----------------------------------------
>
> Key: JAMES-4203
> URL: https://issues.apache.org/jira/browse/JAMES-4203
> Project: James Server
> Issue Type: Improvement
> Components: eventbus, JMAP
> Reporter: Benoit Tellier
> Assignee: Antoine Duprat
> Priority: Major
> Time Spent: 20m
> Remaining Estimate: 0h
>
> h3. Why ?
> As an extension writter I want to publish JMAP identity via IMAP metadata to
> make them available in IMAP app, eg via a THunderBird plugin.
> This requires me to enrich James JMAP event system in order to be able to
> hook onto it.
> h2. How?
> h3. The events themselves
> We would add the following events:
> CustomIdentityCreated (Username user, Identity identity)
> CustomIdentityUpdated (Username user, Identity identity)
> CustomIdentityDeleted (Username user, Set[IdentityId] identityIds)
> AllCustomIdentitiesDeleted (Username user, Set[IdentityId] identityIds)
> Have a common parent class to group them: IdentityEvent
> Code location: org.apache.james.jmap.mail.IdentityEvents in
> james-server-jmap-rfc-8621 module
> h3. Event serialization
> Adapt JmapEventSerializerto serialize + deserialize identity events
> introduced earlier.
> Write tests similar to StateChangeEventSerializerTest in
> IdentityEventsSerializerTest
> h3. Plug the events
> Adapt CustomIdentityDAO implementation to fire events on each operations in
> an injected JMAP event bus. Unit tests should include event publication
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]