@Override
    public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException {
        startQosServer(invoker.getUrl(), true);
        return protocol.export(invoker);
    }
@Test
    void testMultiProtocol() throws Exception {
        // tri protocol start first, acceptForeignIp = true
        triWrapper.export(triInvoker);
        assertThat(server.isStarted(), is(true));
        assertThat(server.getHost(), is("localhost"));
        assertThat(server.getPort(), is(12345));
        assertThat(server.isAcceptForeignIp(), is(true));
        verify(triProtocol).export(triInvoker);

        // next registry protocol server still acceptForeignIp=true even though wrapper invoker url set false
        wrapper.export(invoker);
        assertThat(server.isStarted(), is(true));
        assertThat(server.getHost(), is("localhost"));
        assertThat(server.getPort(), is(12345));
        assertThat(server.isAcceptForeignIp(), is(true));
        verify(protocol).export(invoker);
    }