Well, these options were added in Infinispan 5.2 to control the execution of MapReduceTasks. I think it makes sense to keep these in MapReduceCapable. Otherwise, MapReduceStage has to be aware of the subclasses of MapReduceCapable which isn't good either. I guess it won't matter until the JSR API for this is finalized.