Skip to content

Implement FolderFilteringAction/set create #1952

@quantranhong1999

Description

@quantranhong1999

Why

Runs filter on a stock. Then I can easily sort my older mails.

{
    "using": [
        "urn:ietf:params:jmap:core",
        "com:linagora:params:jmap:filter"
    ],
    "methodCalls": [
        [
            "FolderFilteringAction/set",
            {
                "create": {
                    "clientId1": {
                        "mailboxId": "mailboxId2"
                    },
                    "clientId2": {
                        "unknownProperty": "2016-06-09T01:07:06Z"
                    }
                }
            },
            "c1"
        ]
    ]
}

Would run filters (applied by Filter/set) onto the given emails and apply conditions.

The underlying implementation would be based on an Apache James Task, the result of the FolderFilteringAction/set create would provide the task id(s):

[
    "FolderFilteringAction/set",
    {
        "created": {
            "clientId1": {
                  "id": "taskId1"
            }
        },
        "notCreated": {
            "clientId2": {
                "type": "invalidArguments",
                "description": "Unknown properties: unknownProperty"
            }
        }
    },
    "c1"
]

How

  • Implement FolderFilteringAction/set create method (can take inspiration from EmailRecoveryAction/set create)
  • Contract tests

Note:

  • requires the Filter capability: com:linagora:params:jmap:filter
  • /set create should fail when the status property or unknown property is specified.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions