public DiscoveryProcessor chooseProcessor(final String mode) {
        if (DiscoveryMode.LOCAL.name().equalsIgnoreCase(mode)) {
            return localDiscoveryProcessor;
        } else if (DiscoveryMode.ZOOKEEPER.name().equalsIgnoreCase(mode)) {
            return defaultDiscoveryProcessor;
        } else if (DiscoveryMode.ETCD.name().equalsIgnoreCase(mode)) {
            return defaultDiscoveryProcessor;
        } else if (DiscoveryMode.NACOS.name().equalsIgnoreCase(mode)) {
            return defaultDiscoveryProcessor;
        } else if (DiscoveryMode.EUREKA.name().equalsIgnoreCase(mode)) {
            return apDiscoveryProcessor;
        } else {
            throw new NotImplementedException("shenyu discovery mode current didn't support " + mode);
        }
    }
@Test
    void chooseProcessor() {
        // 测试选择本地模式的情况
        assertEquals(localProcessor, processorHolder.chooseProcessor(DiscoveryMode.LOCAL.name()));

        // 测试选择其他模式的情况
        assertEquals(defaultProcessor, processorHolder.chooseProcessor(DiscoveryMode.ZOOKEEPER.name()));
        assertEquals(defaultProcessor, processorHolder.chooseProcessor(DiscoveryMode.ETCD.name()));
        assertEquals(defaultProcessor, processorHolder.chooseProcessor(DiscoveryMode.NACOS.name()));
        assertEquals(defaultProcessor, processorHolder.chooseProcessor(DiscoveryMode.EUREKA.name()));

        // 测试不支持的模式
        assertThrows(NotImplementedException.class, () -> processorHolder.chooseProcessor("UNKNOWN_MODE"));
    }