class ExpireDisconnectedClientTransactionsMessage extends HighPriorityDistributionMessage {

  @Override
  protected void process(ClusterDistributionManager dm) {
    InternalCache cache = dm.getCache();
    InternalDistributedMember sender = getSender();
    if (cache != null) {
      TXManagerImpl mgr = cache.getTXMgr();
      if (sender.getVersion().isNotOlderThan(KnownVersion.GEODE_1_7_0)) {
        // schedule to expire disconnected client transaction.
        mgr.expireDisconnectedClientTransactions(this.txIds, false);
      } else {
        // check if transaction has been updated before remove it
        mgr.removeExpiredClientTransactions(this.txIds);
      }
    }
  }

  public  ExpireDisconnectedClientTransactionsMessage();

}