@Override
    public void onDiscoveryUpstreamChanged(final List<DiscoverySyncData> discoveryUpstreamList, final DataEventTypeEnum eventType) {
        WebsocketData<DiscoverySyncData> configData =
                new WebsocketData<>(ConfigGroupEnum.DISCOVER_UPSTREAM.name(), eventType.name(), discoveryUpstreamList);
        if (CollectionUtils.isNotEmpty(discoveryUpstreamList)) {
            String namespaceId = discoveryUpstreamList.stream().map(value -> StringUtils.defaultString(value.getNamespaceId(), SYS_DEFAULT_NAMESPACE_ID)).findFirst().get();
            WebsocketCollector.send(namespaceId, GsonUtils.getInstance().toJson(configData), eventType);
        }
    }
The type Websocket data changed listener.

@since 2.0.0
shenyu-admin/src/main/java/org/apache/shenyu/admin/listener/websocket/WebsocketDataChangedListener.java