@Override
    public void onMessage(final String result) {
        if (LOG.isDebugEnabled()) {
            LOG.debug("onMessage server[{}] result({})", this.getURI().toString(), result);
        }
        
        Map<String, Object> jsonToMap = JsonUtils.jsonToMap(result);
        Object eventType = jsonToMap.get(RunningModeConstants.EVENT_TYPE);
        if (Objects.equals(DataEventTypeEnum.RUNNING_MODE.name(), eventType)) {
            LOG.info("server[{}] handle running mode result({})", this.getURI().toString(), result);
            this.runningMode = String.valueOf(jsonToMap.get(RunningModeConstants.RUNNING_MODE));
            if (Objects.equals(RunningModeEnum.STANDALONE.name(), runningMode)) {
                return;
            }
            this.masterUrl = String.valueOf(jsonToMap.get(RunningModeConstants.MASTER_URL));
            this.isConnectedToMaster = Boolean.TRUE.equals(jsonToMap.get(RunningModeConstants.IS_MASTER));
        } else {
            handleResult(result);
        }
    }
Instantiates a new shenyu websocket client.

@param serverUri the server uri
@param headers the headers
@param pluginDataSubscriber the plugin data subscriber
@param metaDataSubscribers the meta data subscribers
@param authDataSubscribers the auth data subscribers
@param proxySelectorDataSubscribers proxySelectorDataSubscribers,
@param discoveryUpstreamDataSubscribers discoveryUpstreamDataSubscribers,
shenyu-sync-data-center/shenyu-sync-data-websocket/src/main/java/org/apache/shenyu/plugin/sync/data/websocket/client/ShenyuWebsocketClient.java