private void handleAuthenticate() {
    // if client is in multi-user mode, the CacheClientUpdater (at this point)
    // can't differentiate which user this message is intended to. so throw exception for now
    // one possible solution is re-authenticate all users in this client
    if (qManager.getPool().getMultiuserAuthentication()) {
      throw new UnsupportedOperationException(
          "Multi-user mode doesn't support re-authentication. This client will be closed.");
    }
    Long userId = AuthenticateUserOp.executeOn(location, qManager.getPool());
    location.setUserId(userId);
  }
Processes messages received from the server.

Only certain types of messages are handled.

TODO: Method 'processMessages' is too complex to analyze by data flow algorithm

@see MessageType#CLIENT_MARKER
@see MessageType#LOCAL_CREATE
@see MessageType#LOCAL_UPDATE
@see MessageType#LOCAL_INVALIDATE
@see MessageType#LOCAL_DESTROY
@see MessageType#LOCAL_DESTROY_REGION
@see MessageType#CLEAR_REGION
@see ClientUpdateMessage
geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientUpdater.java