public void registerClient(ClientProxyMembershipID proxyID, int maximumTimeBetweenPings) {
    if (!clientMaximumTimeBetweenPings.containsKey(proxyID)) {
      clientMaximumTimeBetweenPings.putIfAbsent(proxyID, maximumTimeBetweenPings);
    }
    if (!clientHeartbeats.containsKey(proxyID)) {
      if (null == clientHeartbeats.putIfAbsent(proxyID,
          new AtomicLong(System.currentTimeMillis()))) {
        // don't do this in computeIfAbsent because segment is locked while logging/stats
        if (stats != null) {
          stats.incClientRegisterRequests();
        }
        if (logger.isDebugEnabled()) {
          logger.debug("ClientHealthMonitor: Registering client with member id {}", proxyID);
        }
      }
    }
  }
Registers a new client to be monitored.

@param proxyID The id of the client to be registered
geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java