You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2021/04/07 00:55:46 UTC
[james-project] branch master updated: JAMES-2884 Email/query
s/comparator/sort/
This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
The following commit(s) were added to refs/heads/master by this push:
new 3ded250 JAMES-2884 Email/query s/comparator/sort/
3ded250 is described below
commit 3ded25003e96ac0ccbd40f1e61807b5922ca10ac
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Mon Apr 5 09:13:56 2021 +0700
JAMES-2884 Email/query s/comparator/sort/
---
.../rfc8621/contract/BackReferenceContract.scala | 2 +-
.../contract/EmailQueryMethodContract.scala | 38 +++++++++++-----------
.../org/apache/james/jmap/mail/EmailQuery.scala | 2 +-
.../james/jmap/method/EmailQueryMethod.scala | 6 ++--
4 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/BackReferenceContract.scala b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/BackReferenceContract.scala
index 7763324..47d6d76 100644
--- a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/BackReferenceContract.scala
+++ b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/BackReferenceContract.scala
@@ -464,7 +464,7 @@ trait BackReferenceContract {
| "path":"ids[0]"
| }
| },
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
diff --git a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/EmailQueryMethodContract.scala b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/EmailQueryMethodContract.scala
index 9ad74a6..2bc6e24 100644
--- a/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/EmailQueryMethodContract.scala
+++ b/server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/scala/org/apache/james/jmap/rfc8621/contract/EmailQueryMethodContract.scala
@@ -1605,7 +1605,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"sentAt",
| "isAscending": false
| }]
@@ -1677,7 +1677,7 @@ trait EmailQueryMethodContract {
| "filter": {
| "inMailbox": "${mailboxId.serialize}"
| },
- | "comparator": [{
+ | "sort": [{
| "property":"sentAt",
| "isAscending": false
| }]
@@ -1755,7 +1755,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"sentAt",
| "isAscending": true
| }]
@@ -1833,7 +1833,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"sentAt"
| }]
| },
@@ -1897,7 +1897,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"sentAt"
| }]
| },
@@ -2006,7 +2006,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt"
| }]
| },
@@ -2060,7 +2060,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": true
| }]
@@ -2115,7 +2115,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -2159,7 +2159,7 @@ trait EmailQueryMethodContract {
| "filter": {
| "inMailbox": "${otherMailboxId.serialize}"
| },
- | "comparator": [{
+ | "sort": [{
| "isAscending":true
| }]
| },
@@ -2184,7 +2184,7 @@ trait EmailQueryMethodContract {
.isEqualTo("""
{
"type": "invalidArguments",
- "description": "{\"errors\":[{\"path\":\"obj.comparator[0].property\",\"messages\":[\"error.path.missing\"]}]}"
+ "description": "{\"errors\":[{\"path\":\"obj.sort[0].property\",\"messages\":[\"error.path.missing\"]}]}"
}
""")
}
@@ -2255,7 +2255,7 @@ trait EmailQueryMethodContract {
| "filter": {
| "inMailbox": "${otherMailboxId.serialize}"
| },
- | "comparator": [{
+ | "sort": [{
| "property":"unsupported",
| "isAscending":true
| }]
@@ -2281,7 +2281,7 @@ trait EmailQueryMethodContract {
.isEqualTo("""
{
"type": "invalidArguments",
- "description": "{\"errors\":[{\"path\":\"obj.comparator[0].property\",\"messages\":[\"'unsupported' is not a supported sort property\"]}]}"
+ "description": "{\"errors\":[{\"path\":\"obj.sort[0].property\",\"messages\":[\"'unsupported' is not a supported sort property\"]}]}"
}
""")
}
@@ -2307,7 +2307,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"$unsupported"
| }]
| },
@@ -3212,7 +3212,7 @@ trait EmailQueryMethodContract {
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
| "limit": 1,
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -3301,7 +3301,7 @@ trait EmailQueryMethodContract {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
| "limit": 2,
| "position": 2,
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -3475,7 +3475,7 @@ trait EmailQueryMethodContract {
| "Email/query",
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -3530,7 +3530,7 @@ trait EmailQueryMethodContract {
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
| "limit": 2000,
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -3586,7 +3586,7 @@ trait EmailQueryMethodContract {
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
| "position": 1,
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
@@ -3651,7 +3651,7 @@ trait EmailQueryMethodContract {
| {
| "accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
| "position": 0,
- | "comparator": [{
+ | "sort": [{
| "property":"receivedAt",
| "isAscending": false
| }]
diff --git a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/mail/EmailQuery.scala b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/mail/EmailQuery.scala
index 462fff0..b6358e1 100644
--- a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/mail/EmailQuery.scala
+++ b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/mail/EmailQuery.scala
@@ -123,7 +123,7 @@ case class EmailQueryRequest(accountId: AccountId,
position: Option[PositionUnparsed],
limit: Option[LimitUnparsed],
filter: Option[FilterQuery],
- comparator: Option[Set[Comparator]],
+ sort: Option[Set[Comparator]],
collapseThreads: Option[CollapseThreads],
anchor: Option[Anchor],
anchorOffset: Option[AnchorOffset]) extends WithAccountId {
diff --git a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailQueryMethod.scala b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailQueryMethod.scala
index e218397..ac2e32d 100644
--- a/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailQueryMethod.scala
+++ b/server/protocols/jmap-rfc-8621/src/main/scala/org/apache/james/jmap/method/EmailQueryMethod.scala
@@ -138,12 +138,12 @@ class EmailQueryMethod @Inject() (serializer: EmailQuerySerializer,
private def matchesInMailboxSortedBySentAt(request: EmailQueryRequest): Boolean =
configuration.isEmailQueryViewEnabled &&
request.filter.exists(_.inMailboxFilterOnly) &&
- request.comparator.contains(Set(Comparator.SENT_AT_DESC))
+ request.sort.contains(Set(Comparator.SENT_AT_DESC))
private def matchesInMailboxAfterSortedBySentAt(request: EmailQueryRequest): Boolean =
configuration.isEmailQueryViewEnabled &&
request.filter.exists(_.inMailboxAndAfterFilterOnly) &&
- request.comparator.contains(Set(Comparator.SENT_AT_DESC))
+ request.sort.contains(Set(Comparator.SENT_AT_DESC))
private def toResponse(request: EmailQueryRequest, position: Position, limitToUse: Limit, ids: Seq[MessageId]): EmailQueryResponse =
EmailQueryResponse(accountId = request.accountId,
@@ -159,7 +159,7 @@ class EmailQueryMethod @Inject() (serializer: EmailQuerySerializer,
.collectSeq()
private def searchQueryFromRequest(request: EmailQueryRequest, capabilities: Set[CapabilityIdentifier], session: MailboxSession): Either[UnsupportedOperationException, MultimailboxesSearchQuery] = {
- val comparators: List[Comparator] = request.comparator.getOrElse(Set()).toList
+ val comparators: List[Comparator] = request.sort.getOrElse(Set()).toList
comparators.map(_.toSort)
.sequence
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org