[ 
https://issues.apache.org/jira/browse/JAMES-3006?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16994291#comment-16994291
 ] 

Benoit Tellier commented on JAMES-3006:
---------------------------------------

Proof of concept: https://github.com/linagora/james-project/pull/2988

I got to a point that I like, and will cleanup the history before making it a 
viable pull request.

While working on this issue, I found some side concern:
 - All task handling is duplicated in webadmin. I adapted the above proposal to 
remove that duplication. (ability to convert a task generator directly to a 
route.
 - https://github.com/linagora/james-project/pull/2987 some endpoint were not 
positioning the task location header correctly. Not providing alternative to 
the above code path prevent this mistake from happening.

> Extension mechanism for WebAdmin task generation
> ------------------------------------------------
>
>                 Key: JAMES-3006
>                 URL: https://issues.apache.org/jira/browse/JAMES-3006
>             Project: James Server
>          Issue Type: Sub-task
>            Reporter: Trần Tiến Đức
>            Priority: Major
>
> See mailing thread 
> https://www.mail-archive.com/[email protected]/msg63547.html
> - Defining a `TaskRegistration` object:
> {code:java}
> class TaskRegistration {
>  private final TaskType taskType;
>  private final TaskGenerator taskGenerator;
> }
> interface TaskGenerator {
>  Task generate(Request request);
> }
> {code}
>  
> - Thus a @Named task factory can collect task registration for each one
> of these 03 endpoints, which can thus be defined in a modular way.
> - We can thus post ReIndexing to be using these taskDeclaration
> ## DOD
> ReIndexing (all mailboxes, a user mailboxes, and single message reIndexing) 
> is using this extension mechanism...



--
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