On 10-12-15 4:00 PM, Manik Surtani wrote:

On 15 Dec 2010, at 18:43, Vladimir Blagojevic wrote:

On 10-12-15 3:03 PM, Manik Surtani wrote:
I'm gonna cc infinispan-dev as well, so others can pitch in.

But yeah, good start. I think your dissection of the use cases makes sense, except that I think (a) and (c) are essentially the same; only that in the case of (c) the task ignores any data input.  This would raise the question of why would anybody do this, and what purpose does it solve. :-)  So yeah, we could support it as a part of (a), but I am less than convinced of its value.  

Ok, no problem. We just have to somehow bootstrap EntryStreamProcessorContext with no access to cache for c case.

Well, I reckon we provide the ref to the cache.  If the impl doesn't make use of it, too bad.

Agreed.

Just to finalise the API.  Would this be specific to a cache or a cache manager?  E.g., should it be Cache.newDistributedTask()?

I think it makes more sense on CacheManager because we might have a task operating on data of a few caches, not just one. So to be safe and not sorry I'd go with CacheManager. newDistributedTask can have parameters to specify which cache(s) to use.

WDYT?

Cheers