Benoit Tellier created JAMES-3404:
-------------------------------------

             Summary: Email/query & client Id Resolution
                 Key: JAMES-3404
                 URL: https://issues.apache.org/jira/browse/JAMES-3404
             Project: James Server
          Issue Type: Improvement
          Components: JMAP
            Reporter: Benoit Tellier
            Assignee: Antoine Duprat


= Why

This request should be handled:

```
{
   "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail", 
"urn:apache:james:params:jmap:mail:shares" ],
   "methodCalls": [
       [
           "Mailbox/set",
           {
                "accountId": 
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
                "create": {
                    "C42": {
                      "name": "myMailbox"
                    }
                }
           },
    "c1"
       ], [
    "Email/query",
    {
      "accountId": 
"29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
      "filter" : {
        "inMailboxOtherThan": ["#C42"] 
      }
    },
    "c1"]
}
```

Note that "inMailboxOtherThan" is holding a reference to a previous filter.

Today we do not handle such requests.

== Definition of done

Demonstrate with a memory unit test that this request is supported.

== How

Explicit handling of clientIds in methods is a dead end and result in extremely 
complicated code.

We should handle the substitution upon backreference resolution.

== Side effect

It will enable code simplification (we would no longer need to handle 
explicitly clientId in methods as it will be done).

It will enable clientId support for all further entities with minimal efforts.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to