public void unregisterInterest(Object key, final @NotNull InterestType interestType,
      boolean isClosing,
      boolean keepAlive) {
    if (interestType == InterestType.KEY && key instanceof List) {
      unregisterInterestList(uncheckedCast(key), isClosing, keepAlive);
    } else {
      RegisterInterestTracker rit = pool.getRITracker();
      boolean removed = rit.removeSingleInterest(region, key, interestType, false, false)
          || rit.removeSingleInterest(region, key, interestType, true, false)
          || rit.removeSingleInterest(region, key, interestType, false, true)
          || rit.removeSingleInterest(region, key, interestType, true, true);
      if (removed) {
        UnregisterInterestOp.execute(pool, regionName, key, interestType, isClosing,
            keepAlive);
      }
    }
  }
Does a region unregisterInterest on a server

@param key describes what we are no longer interested in
@param interestType the {@link InterestType} for this unregister
@param isClosing true if this unregister is done by a close
@param keepAlive true if this unregister should not undo a durable registration
geode-core/src/main/java/org/apache/geode/cache/client/internal/ServerRegionProxy.java