public static Execution onRegion(Region region) {
    return getFunctionExecutionService().onRegion(region);
  }
Returns an {@link Execution} object that can be used to execute a data dependent function on
the specified Region.<br>
When invoked from a GemFire client, the method returns an Execution instance that sends a
message to one of the connected servers as specified by the {@link Pool} for the region. <br>
Depending on the filters setup on the {@link Execution}, the function is executed on all
GemFire members that define the data region, or a subset of members.
{@link Execution#withFilter(Set)}).

For DistributedRegions with DataPolicy.NORMAL, it throws UnsupportedOperationException. For
DistributedRegions with DataPolicy.EMPTY, execute the function on any random member which has
DataPolicy.REPLICATE <br>
. For DistributedRegions with DataPolicy.REPLICATE, execute the function locally. For Regions
with DataPolicy.PARTITION, it executes on members where the data resides as specified by the
filter.

@param region the {@link Region} on which the returned {@link Execution} will execute functions
@return an {@link Execution} object that can be used to execute a data dependent function on
        the specified {@link Region}
@throws FunctionException if the region passed in is null
@since GemFire 6.0
geode-core/src/main/java/org/apache/geode/cache/execute/FunctionService.java