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

Nikolay Tikhonov commented on IGNITE-425:
-----------------------------------------

[~NIzhikov],
Thank you for your contribution! I've reviewed your changes and have the 
following comments:
* Need to add more informative javadoc for TransformedEventListener class. Also 
don't forget to add apache header;
* Let's add a correct assertion instead of removed {{assert locLsnr != null}} 
in constructor CacheContinuousQuery Handler;
* Add assertion in #notifyLocLsnr method which check that exactly one listener 
exists and this method should be renamed;
* Use F.view in #transform method or avoid to create wrapper over collections; 


> Introduce transformers for continuous queries
> ---------------------------------------------
>
>                 Key: IGNITE-425
>                 URL: https://issues.apache.org/jira/browse/IGNITE-425
>             Project: Ignite
>          Issue Type: Sub-task
>          Components: cache
>            Reporter: Yakov Zhdanov
>            Assignee: Nikolay Izhikov
>
> Currently if updated entry passes the filter, it is sent to node initiated 
> the query entirely. It would be good to provide user with the ability to 
> transform entry and, for example, select only fields that are important. This 
> may bring huge economy to traffic and lower GC pressure as well.
> Possible signatures will be:
> {noformat}
> public final class ContinuousQuery<K, V, T> {..} // T is a type transformer 
> transforms to
> public ContinuousQuery<K, V, T> setLocalListener(Listener<T> locLsnr) {..} // 
> Probably, we will have to introduce new listener type, since user may want to 
> wipe out key as well.
> /* new method to add */
> public ContinuousQuery<K, V, T> setRemoteTransformerFactory(Factory<? extends 
> ContinuousQueryTransformer<K, V, T>> factory) { ..}
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to