class MeshRegistryFactory extends AbstractRegistryFactory {
    @Override
    protected Registry createRegistry(URL url) {
        return new MeshRegistry(url, new DefaultHttpMeshTransport());
    }

    @Override
    protected String getRegistryUri(URL url) {<FILL_FUNCTION_BODY>}
}

        // registry uri with proxy registry
        String proxyRegistry = url.getParameter(URLParamType.proxyRegistryUrlString.name());
        if (StringUtils.isBlank(proxyRegistry)) {
            proxyRegistry = url.getParameter(url.getParameter(URLParamType.meshRegistryName.name()));
        }
        String registryUri = url.getUri() + "?proxyRegistry=" + proxyRegistry;
        return registryUri;
    
<methods>public non-sealed void <init>() ,public com.weibo.api.motan.registry.Registry getRegistry(com.weibo.api.motan.rpc.URL) <variables>private static final java.util.concurrent.locks.ReentrantLock lock,private static final ConcurrentHashMap<java.lang.String,com.weibo.api.motan.registry.Registry> registries