void destroyMember(final InternalDistributedMember member, final String reason) {
    final DirectChannel dc = directChannel;
    if (dc != null) {
      // Bug 37944: make sure this is always done in a separate thread,
      // so that shutdown conditions don't wedge the view lock
      // fix for bug 34010
      dc.scheduleCloseEndpoint(member, reason, false);
    }
  }
for mock testing this allows insertion of a DirectChannel mock
geode-core/src/main/java/org/apache/geode/distributed/internal/DistributionImpl.java