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

Claus Ibsen commented on CAMEL-7434:
------------------------------------

You would need to introduce a new interface, that has a method to trigger that 
group completion. And then allow end users to implement that interface, and 
configure this to the aggregate eip defintion. 

Though naming is usually the hard part, but maybe an option named 
externalController, or externalSomething. Then we could potential have other 
controller functions in the future.

{code}
<aggregate externalController="#myAggController" ... >
 ...
{code}

And we could also expose the operation in JMX so people can trigger it from 
there too.

> Provide a way to force the completion of a aggregate exchange from an 
> external event
> ------------------------------------------------------------------------------------
>
>                 Key: CAMEL-7434
>                 URL: https://issues.apache.org/jira/browse/CAMEL-7434
>             Project: Camel
>          Issue Type: New Feature
>          Components: camel-core, eip
>    Affects Versions: 2.13.0
>            Reporter: Susan Javurek
>            Assignee: Ben O'Day
>             Fix For: Future
>
>
> There is a way to do this by creating a "trigger" exchange that is handled in 
> a special way by the aggregation strategy and a completion predicate. But 
> this solution is quite intrusive and painful to write.
> It would actually be much easier if the AggregateProcessor would implement 
> and expose the following methods:
> public void forceCompletionOfGroup(String key)
> public Expression getCorrelationExpression()
> This way, it becomes possible to control "externally" an aggregator without 
> having to implement some intrusive logic.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to