[
https://issues.apache.org/jira/browse/JAMES-3464?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17240645#comment-17240645
]
Benoit Tellier commented on JAMES-3464:
---------------------------------------
I don't see how this fit with the Distributed James consistency model.
I don't see how to easily and efficiently implement this.
I don't see how this helps regarding Mailbox/changes. Did you confused it with
the newState / oldState properties in the Mailbox/set response object?
> Mailbox/set should handle ifInState
> -----------------------------------
>
> Key: JAMES-3464
> URL: https://issues.apache.org/jira/browse/JAMES-3464
> Project: James Server
> Issue Type: Sub-task
> Reporter: Lan Khuat
> Priority: Major
>
> From spec: [https://jmap.io/spec-core.html#set] (section 5.3)
> {code:java}
> ifInState: This is a state string as returned by the Foo/get method
> (representing the state of all objects of this type in the account). If
> supplied, the string must match the current state; otherwise, the method will
> be aborted and a stateMismatch error returned. If null, any changes will be
> applied to the current state.
> {code}
> h1. How
> When Email/set request is received, if the ifInState property is present we
> need to compare it with the current Mailbox state stored in
> MailboxChangeRepository.
> * if mismatched, a stateMismatch error should be returned.
> * if matched, all the changes in the request will be applied and should
> create a new state, unless all the methodCalls in the request end up failing.
> If the ifInState property is omitted then all the changes will be applied to
> the current state.
> h1. DoD
> Integration tests to show that the Mailbox/set method can handle ifInState
> property.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]