/**
  * Handles the heartbeat from a client.
  *
  * @param sessionId The id of the client
  * @param metrics The set of metrics the client has gathered since the last heartbeat
  */
 public void sessionHeartbeat(long sessionId, List<Long> metrics) {
   mSessions.sessionHeartbeat(sessionId);
   mMetricsReporter.updateClientMetrics(metrics);
 }
 /**
  * Cleans up after sessions, to prevent zombie sessions. This method is called periodically by
  * {@link SessionCleaner} thread.
  */
 public void cleanupSessions() {
   for (long session : mSessions.getTimedOutSessions()) {
     mSessions.removeSession(session);
     mBlockStore.cleanupSession(session);
   }
 }