private Lock getRegionDistributedLockIfGlobal() throws TimeoutException {
    if (getScope().isGlobal()) {
      if (isLockingSuspendedByCurrentThread()) {
        return null;
      }
      Lock dlock = getRegionDistributedLock();
      dlock.lock(); // caller is expected to use a try-finally to unlock
      return dlock;
    }
    return null;
  }
If this region's scope is GLOBAL, get the region distributed lock. The sender is responsible
for unlocking.

@return the acquired Lock if the region is GLOBAL and not already suspend, otherwise null.
geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java