Benoit Tellier created JAMES-3547:
-------------------------------------
Summary: Complete the implementation of Mailbox/query
Key: JAMES-3547
URL: https://issues.apache.org/jira/browse/JAMES-3547
Project: James Server
Issue Type: Sub-task
Components: JMAP
Affects Versions: 3.6.0
Reporter: Benoit Tellier
Assignee: Antoine Duprat
Mailbox/query filter property do not yet support search operators (and or not)
and only supports 'role' filter. No sorts are supported.
This is so far a really rudimentary implementation, devoted to one-api-call
inbox mail list loading.
According to https://jmap.io/spec-mail.html#mailboxquery :
{code:java}
A FilterCondition object has the following properties, any of which may be
omitted:
parentId: Id|null The Mailbox parentId property must match the given value
exactly.
name: String The Mailbox name property contains the given string.
role: String|null The Mailbox role property must match the given value
exactly.
hasAnyRole: Boolean If true, a Mailbox matches if it has any non-null value
for its role property.
isSubscribed: Boolean The isSubscribed property of the Mailbox must be
identical to the value given to match the condition.
A Mailbox object matches the FilterCondition if and only if all of the given
conditions match. If zero properties are specified, it is automatically true
for all objects.
The following Mailbox properties MUST be supported for sorting:
sortOrder
name
{code}
Also two more properties are created: *sortAsTree* and *filterAsTree*
*How*
For a full support we should likely index mailboxes in ElasticSearch and craft
the related search APIs. A scrolling version for memory might be needed too.
As this is not a strong requirement for Linagora, and as it seems expensive to
implement, we will likely not contribute it soon, but we could provide guidance
into implementing it.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]