You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Ben O'Day (JIRA)" <ji...@apache.org> on 2011/04/12 23:54:05 UTC
[jira] [Created] (CAMEL-3855) make aggregate() easier to use for
the common case
make aggregate() easier to use for the common case
--------------------------------------------------
Key: CAMEL-3855
URL: https://issues.apache.org/jira/browse/CAMEL-3855
Project: Camel
Issue Type: Improvement
Components: camel-core
Reporter: Ben O'Day
Assignee: Ben O'Day
Priority: Minor
Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
aggregate() == aggregate(constant(true)).groupExchanges()
or
aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (CAMEL-3855) make aggregate() easier to use for
the common case
Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-3855.
--------------------------------
Resolution: Won't Fix
Fix Version/s: 2.8.0
> make aggregate() easier to use for the common case
> --------------------------------------------------
>
> Key: CAMEL-3855
> URL: https://issues.apache.org/jira/browse/CAMEL-3855
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Ben O'Day
> Assignee: Ben O'Day
> Priority: Minor
> Fix For: 2.8.0
>
> Attachments: CAMEL-3855.patch
>
>
> Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
> For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
> aggregate() == aggregate(constant(true)).groupExchanges()
> or
> aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
> See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CAMEL-3855) make aggregate() easier to use for
the common case
Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13019218#comment-13019218 ]
Claus Ibsen commented on CAMEL-3855:
------------------------------------
No thats frankly not intuitive, to aggregate using a constant expression, and all into a list. If you read the EIP book then thats not the point they explain about the pattern. There are many other uses cases where you must aggregate by a correlation key part of the message and so forth.
The current solution to ensure the end user specify the
- correlation expression
- aggregation strategy
- completion conditions
Works the best as there are no surprises with defaults and what not. The end user configure the EIP according to their needs.
> make aggregate() easier to use for the common case
> --------------------------------------------------
>
> Key: CAMEL-3855
> URL: https://issues.apache.org/jira/browse/CAMEL-3855
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Ben O'Day
> Assignee: Ben O'Day
> Priority: Minor
> Attachments: CAMEL-3855.patch
>
>
> Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
> For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
> aggregate() == aggregate(constant(true)).groupExchanges()
> or
> aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
> See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CAMEL-3855) make aggregate() easier to use for
the common case
Posted by "Ben O'Day (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ben O'Day updated CAMEL-3855:
-----------------------------
Attachment: CAMEL-3855.patch
adds a basic "aggregate as list" strategy class and test case
> make aggregate() easier to use for the common case
> --------------------------------------------------
>
> Key: CAMEL-3855
> URL: https://issues.apache.org/jira/browse/CAMEL-3855
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Ben O'Day
> Assignee: Ben O'Day
> Priority: Minor
> Attachments: CAMEL-3855.patch
>
>
> Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
> For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
> aggregate() == aggregate(constant(true)).groupExchanges()
> or
> aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
> See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CAMEL-3855) make aggregate() easier to use for
the common case
Posted by "Ben O'Day (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13019371#comment-13019371 ]
Ben O'Day commented on CAMEL-3855:
----------------------------------
thanks Claus, I can see both sides of providing a default case...I'm speaking from my normal use of it. I do think that including a few more basic strategies couldn't hurt though.
In regards to documentation, I don't yet have permission to edit pages. I have an ICLA on file and a Confluence account (boday). I'll send an email to the dev list to request permission and start helping in that area soon...
> make aggregate() easier to use for the common case
> --------------------------------------------------
>
> Key: CAMEL-3855
> URL: https://issues.apache.org/jira/browse/CAMEL-3855
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Ben O'Day
> Assignee: Ben O'Day
> Priority: Minor
> Fix For: 2.8.0
>
> Attachments: CAMEL-3855.patch
>
>
> Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
> For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
> aggregate() == aggregate(constant(true)).groupExchanges()
> or
> aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
> See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CAMEL-3855) make aggregate() easier to use for
the common case
Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-3855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13019225#comment-13019225 ]
Claus Ibsen commented on CAMEL-3855:
------------------------------------
Ben you are of course very welcome to help improve the wiki documentation of the aggregator EIP page
http://camel.apache.org/aggregator2
Or you can create a short cookbook example about the usecase of aggregating everything into a List
http://camel.apache.org/cookbook
We can always use help with the documentation. And its much appreciated, and it also helps on merits to become a committers (all kind of contributions does).
> make aggregate() easier to use for the common case
> --------------------------------------------------
>
> Key: CAMEL-3855
> URL: https://issues.apache.org/jira/browse/CAMEL-3855
> Project: Camel
> Issue Type: Improvement
> Components: camel-core
> Reporter: Ben O'Day
> Assignee: Ben O'Day
> Priority: Minor
> Fix For: 2.8.0
>
> Attachments: CAMEL-3855.patch
>
>
> Currently, an expression and strategy are required to use aggregate(). Perhaps, we could set a default expression (constant(true), etc) and strategy (either groupExchanges() or the attached AggregateAsListStrategy, etc).
> For example, either of these could make a good intuitive default (still requiring a completionSize/Interval, etc)
> aggregate() == aggregate(constant(true)).groupExchanges()
> or
> aggregate() == aggregate(constant(true), new AggregateAsListStrategy())
> See this discussion for more information....http://camel.465427.n5.nabble.com/Default-Behavior-for-aggregate-td4296790.html
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira