private void destroyGrantor() {
    Assert.assertHoldsLock(this, true);
    makeDestroyed();
    // reply to all pending requests w/ NOT_GRANTOR
    synchronized (grantTokens) {
      Collection grants = grantTokens.values();
      for (final Object o : grants) {
        DLockGrantToken grant = (DLockGrantToken) o;
        grant.handleGrantorDestruction();
      }
    }

    synchronized (suspendLock) {
      final boolean isDebugEnabled_DLS = logger.isTraceEnabled(LogMarker.DLS_VERBOSE);
      if (isDebugEnabled_DLS) {
        logger.trace(LogMarker.DLS_VERBOSE,
            "[DLockGrantor.destroyAndRemove] responding to {} permitted requests.",
            permittedRequests.size());
      }
      respondWithNotGrantor(permittedRequests.iterator());

      if (isDebugEnabled_DLS) {
        logger.trace(LogMarker.DLS_VERBOSE,
            "[DLockGrantor.destroyAndRemove] responding to {} requests awaiting permission.",
            suspendQueue.size());
      }
      respondWithNotGrantor(suspendQueue.iterator());

      for (final Object o : permittedRequestsDrain) {
        final List drain = (List) o;
        if (isDebugEnabled_DLS) {
          logger.trace(LogMarker.DLS_VERBOSE,
              "[DLockGrantor.destroyAndRemove] responding to {} drained permitted requests.",
              drain.size());
        }
        respondWithNotGrantor(drain.iterator());
      }
    }
  }
Send replies to all waiting requestors to notify them that this is no longer the grantor.
<p>
Caller must acquire destroyWriteLock. Synchronizes on suspendLock, grantTokens, and each grant
token.

guarded.By {@link #acquireDestroyWriteLock(long)}
geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockGrantor.java