public static Provider url2Provider()

in dubbo-admin-server/src/main/java/org/apache/dubbo/admin/common/util/SyncUtils.java [44:75]


    public static Provider url2Provider(Pair<String, URL> pair) {
        if (pair == null) {
            return null;
        }

        String id = pair.getKey();
        URL url = pair.getValue();

        if (url == null)
            return null;

        Provider p = new Provider();
        p.setHash(id);
        String group = url.getUrlParam().getParameter(Constants.GROUP_KEY);
        String version = url.getUrlParam().getParameter(Constants.VERSION_KEY);
        String service = BaseServiceMetadata.buildServiceKey(getServiceInterface(url), group, version);
        p.setService(service);
        p.setAddress(url.getAddress());
        p.setApplication(url.getParameter(Constants.APPLICATION_KEY));
        p.setUrl(url.toFullString());
        p.setParameters(url.toParameterString());

        p.setDynamic(url.getParameter("dynamic", true));
        p.setEnabled(url.getParameter(Constants.ENABLED_KEY, true));
        p.setSerialization(url.getParameter(org.apache.dubbo.remoting.Constants.SERIALIZATION_KEY, "hessian2"));
        p.setTimeout(url.getParameter(CommonConstants.TIMEOUT_KEY, CommonConstants.DEFAULT_TIMEOUT));
        p.setWeight(url.getParameter(Constants.WEIGHT_KEY, Constants.DEFAULT_WEIGHT));
        p.setUsername(url.getParameter("owner"));
        p.setRegistrySource(RegistrySource.INTERFACE);

        return p;
    }