protected void enqueueMessage(Conflatable clientMessage) {
    try {
      long startTime = _proxy._statistics.startMessageQueueStats();
      _messageQueue.put(clientMessage);
      _proxy._statistics.endMessageQueueStats(startTime);
      _proxy._statistics.setQueueSize(_messageQueue.size());

      if (_proxy.isPaused() && _proxy.isDurable()) {
        _proxy._cacheClientNotifier.statistics.incEventEnqueuedWhileClientAwayCount();
        if (logger.isDebugEnabled()) {
          logger.debug("{}: Queued message while Durable Client is away {}", this, clientMessage);
        }
      }
    } catch (CancelException e) {
      throw e;
    } catch (Exception e) {
      if (!isStopped()) {
        _proxy._statistics.incMessagesFailedQueued();
        logger.fatal(
            String.format("%s: Exception occurred while attempting to add message to queue",
                this),
            e);
      }
    }
  }
Add the input client message to the message queue

@param clientMessage The <code>Conflatable</code> to add to the queue
geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/MessageDispatcher.java