@Override
  @SuppressWarnings("unchecked")
  public void execute(FunctionContext context) {
    RegionFunctionContext rfc = (RegionFunctionContext) context;
    Set<String> keys = (Set<String>) rfc.getFilter();

    Cache cache = context.getCache();
    // Get local (primary) data for the context
    Region primaryDataSet = getLocalDataForContextViaRegionHelper(rfc);

    if (cache.getLogger().fineEnabled()) {
      String builder = "Function " + ID + " received request to touch "
          + primaryDataSet.getFullPath() + "->" + keys;
      cache.getLogger().fine(builder);
    }

    // Retrieve each value to update the lastAccessedTime.
    // Note: getAll is not supported on LocalDataSet.
    for (String key : keys) {
      primaryDataSet.get(key);
    }

    // Return result to get around NPE in LocalResultCollectorImpl
    context.getResultSender().lastResult(true);
  }
Touches the keys contained in the set of keys by performing a get on the partitioned region.
extensions/geode-modules/src/main/java/org/apache/geode/modules/util/TouchPartitionedRegionEntriesFunction.java