Uploaded image for project: 'James Server'
  1. James Server
  2. JAMES-2884 Update JMAP implementation to conform to RFC 8620/8621
  3. JAMES-3390

Email/Query support combination of filters with the FilterOperator (AND, OR, NOT)

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Done
    • None
    • 3.6.0
    • JMAP
    • None

    Description

          1. WHY
            As an user i want to be able to build complex query using the FilterOperators (AND, OR, NOT)
      [[ "Email/query",{
        "accountId": "ue150411c",
        "filter":  {
            "operator": "OR",
            "conditions": [
            { "inMailbox":  "mailbox1"}, {"inMailbox":  "mailbox2"}   
      ]
      }
      }, "0" ]]
      

      ###HOW

      • in the request accept the filter with an 'operator' field and distinguish it from the simple Condition.
        This should be handled in the Json reads. And build a tree which have nodes being FilterOperator and leaf being FilterConditions.
      • translate those elastic search query
          1. Definition of Done
      • write an integration test demonstrating the support of one level of Operator (like in the previous example)
      • write an integration test demonstrating the support of an arbitrary level of nesting Operators.
      • run those tests against the distributed version of james.

      Attachments

        Activity

          People

            aduprat Antoine Duprat
            btellier Benoit Tellier
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: