Package com.alibaba.dubbo.registry.common.domain

Examples of com.alibaba.dubbo.registry.common.domain.Provider


                    && entry.getValue()[0] != null && entry.getValue()[0].length() > 0) {
                if (! currentUser.hasServicePrivilege(entry.getKey())) {
                    throw new IllegalStateException("The user " + operator + " have no privilege of service " + entry.getKey());
                }
                for(Entry<String,String> e : CollectionUtils.split(Arrays.asList(entry.getValue()), "?").entrySet()){
                   Provider provider = providervice.findByServiceAndAddress(entry.getKey(), e.getKey());
                    if (provider != null) {
                        providervice.deleteStaticProvider(provider.getId());
                    }
                }
            }
        }
      
View Full Code Here


    public void enableProvider(Long id) {
        if(id == null) {
            throw new IllegalStateException("no provider id");
        }
       
        Provider oldProvider = findProvider(id);
      
        if(oldProvider == null) {
            throw new IllegalStateException("Provider was changed!");
        }
        if (oldProvider.isDynamic()) {
          //保证disable的override唯一
          if(!oldProvider.isEnabled()){
            Override override = new Override();
            override.setAddress(oldProvider.getAddress());
            override.setService(oldProvider.getService());
            override.setEnabled(true);
            override.setParams(Constants.DISABLED_KEY+"=false");
            overrideService.saveOverride(override);
            return;
          }
          List<Override> oList = overrideService.findByServiceAndAddress(oldProvider.getService(), oldProvider.getAddress());
        
          for(Override o : oList){
            Map<String, String> params = StringUtils.parseQueryString(o.getParams());
            if(params.containsKey(Constants.DISABLED_KEY)){
              if(params.get(Constants.DISABLED_KEY) .equals("true")){
                overrideService.deleteOverride(o.getId());
              }
            }
          }
        } else {
          oldProvider.setEnabled(true);
          updateProvider(oldProvider);
        }
    }
View Full Code Here

        URL url = pair.getValue();

        if (url == null)
            return null;

        Provider p = new Provider();
        p.setId(id);
        p.setService(url.getServiceKey());
        p.setAddress(url.getAddress());
        p.setApplication(url.getParameter(Constants.APPLICATION_KEY));
        p.setUrl(url.toIdentityString());
        p.setParameters(url.toParameterString());

        p.setDynamic(url.getParameter("dynamic", true));
        p.setEnabled(url.getParameter(Constants.ENABLED_KEY, true));
        p.setWeight(url.getParameter(Constants.WEIGHT_KEY, Constants.DEFAULT_WEIGHT));
        p.setUsername(url.getParameter("owner"));

        return p;
    }
View Full Code Here

    public void disableProvider(Long id) {
        if(id == null) {
            throw new IllegalStateException("no provider id");
        }
       
        Provider oldProvider = findProvider(id);
        if(oldProvider == null) {
            throw new IllegalStateException("Provider was changed!");
        }
       
        if (oldProvider.isDynamic()) {
          //保证disable的override唯一
          if(oldProvider.isEnabled()){
            Override override = new Override();
            override.setAddress(oldProvider.getAddress());
            override.setService(oldProvider.getService());
            override.setEnabled(true);
            override.setParams(Constants.DISABLED_KEY+"=true");
            overrideService.saveOverride(override);
            return;
          }
          List<Override> oList = overrideService.findByServiceAndAddress(oldProvider.getService(), oldProvider.getAddress());
        
          for(Override o : oList){
            Map<String, String> params = StringUtils.parseQueryString(o.getParams());
            if(params.containsKey(Constants.DISABLED_KEY)){
              if(params.get(Constants.DISABLED_KEY) .equals("false")){
                overrideService.deleteOverride(o.getId());
              }
            }
          }
        } else {
          oldProvider.setEnabled(false);
          updateProvider(oldProvider);
        }
       
    }
View Full Code Here

    public void setWeight(Long id, float factor) {
        if(id == null) {
            throw new IllegalStateException("no provider id");
        }
        Provider oldProvider = findProvider(id);
        if(oldProvider == null) {
            throw new IllegalStateException("Provider was changed!");
        }
        Map<String, String> map = StringUtils.parseQueryString(oldProvider.getParameters());
      String weight = map.get(Constants.WEIGHT_KEY);
        if (oldProvider.isDynamic()) {
          //保证disable的override唯一
          List<Override> overrides = overrideService.findByServiceAndAddress(oldProvider.getService(), oldProvider.getAddress());
          if (overrides == null || overrides.size() == 0) {
            int value = getWeight(weight, factor);
            if (value != Constants.DEFAULT_WEIGHT) {
              Override override = new Override();
              override.setAddress(oldProvider.getAddress());
              override.setService(oldProvider.getService());
              override.setEnabled(true);
              override.setParams(Constants.WEIGHT_KEY + "=" + String.valueOf(value));
              overrideService.saveOverride(override);
            }
          } else {
            for(Override override : overrides){
              Map<String, String> params = StringUtils.parseQueryString(override.getParams());
              String overrideWeight = params.get(Constants.WEIGHT_KEY);
              if (overrideWeight == null || overrideWeight.length() == 0) {
                overrideWeight = weight;
              }
              int value = getWeight(overrideWeight, factor);
              if (value == getWeight(weight, 1)) {
                params.remove(Constants.WEIGHT_KEY);
              } else {
                params.put(Constants.WEIGHT_KEY, String.valueOf(value));
              }
              if (params.size() > 0) {
                override.setParams(StringUtils.toQueryString(params));
                overrideService.updateOverride(override);
              } else {
                overrideService.deleteOverride(override.getId());
              }
            }
          }
        } else {
          int value = getWeight(weight, factor);
          if (value == Constants.DEFAULT_WEIGHT) {
            map.remove(Constants.WEIGHT_KEY);
          } else {
            map.put(Constants.WEIGHT_KEY, String.valueOf(value));
          }
          oldProvider.setParameters(StringUtils.toQueryString(map));
          updateProvider(oldProvider);
        }
    }
View Full Code Here

        _cookie.setPath("/");
        response.addCookie(_cookie); // 写入客户端硬盘
  }

  public void show(Long id, Map<String, Object> context) {
        Provider provider = providerService.findProvider(id);
        if (provider != null && provider.isDynamic()) {
      List<Override> overrides = overrideService.findByServiceAndAddress(provider.getService(), provider.getAddress());
          OverrideUtils.setProviderOverrides(provider, overrides);
        }
        context.put("provider", provider);
    }
View Full Code Here

      if (context.get("service") == null) {
        List<String> serviceList = Tool.sortSimpleName(new ArrayList<String>(providerService.findServices()));
        context.put("serviceList", serviceList);
      }
    if (id != null) {
      Provider p = providerService.findProvider(id);
          if (p != null) {
            context.put("provider", p);
        String parameters = p.getParameters();
        if (parameters != null && parameters.length() > 0) {
          Map<String, String> map = StringUtils.parseQueryString(parameters);
          map.put("timestamp", String.valueOf(System.currentTimeMillis()));
          map.remove("pid");
          p.setParameters(StringUtils.toQueryString(map));
        }
      }
    }
    }
View Full Code Here

    }

    public boolean update(Provider newProvider, Map<String, Object> context) {
      Long id = newProvider.getId();
      String parameters = newProvider.getParameters();
      Provider provider = providerService.findProvider(id);
    if (provider == null) {
      context.put("message", getMessage("NoSuchOperationData", id));
      return false;
    }
        String service = provider.getService();
        if (!super.currentUser.hasServicePrivilege(service)) {
            context.put("message", getMessage("HaveNoServicePrivilege", service));
            return false;
        }
        Map<String, String> oldMap = StringUtils.parseQueryString(provider.getParameters());
        Map<String, String> newMap = StringUtils.parseQueryString(parameters);
        for (Map.Entry<String, String> entry : oldMap.entrySet()) {
          if (entry.getValue().equals(newMap.get(entry.getKey()))) {
            newMap.remove(entry.getKey());
          }
        }
    if (provider.isDynamic()) {
            String address = provider.getAddress();
            List<Override> overrides = overrideService.findByServiceAndAddress(provider.getService(), provider.getAddress());
          OverrideUtils.setProviderOverrides(provider, overrides);
          Override override = provider.getOverride();
            if (override != null) {
                if (newMap.size() > 0) {
                  override.setParams(StringUtils.toQueryString(newMap));
                    override.setEnabled(true);
                    override.setOperator(operator);
                    override.setOperatorAddress(operatorAddress);
                    overrideService.updateOverride(override);
                } else {
                  overrideService.deleteOverride(override.getId());
                }
            } else {
                override = new Override();
                override.setService(service);
                override.setAddress(address);
                override.setParams(StringUtils.toQueryString(newMap));
                override.setEnabled(true);
                override.setOperator(operator);
                override.setOperatorAddress(operatorAddress);
                overrideService.saveOverride(override);
            }
    } else {
      provider.setParameters(parameters);
      providerService.updateProvider(provider);
    }
        return true;
    }
View Full Code Here

        return true;
    }

    public boolean delete(Long[] ids, Map<String, Object> context) {
    for (Long id : ids) {
      Provider provider = providerService.findProvider(id);
      if (provider == null) {
        context.put("message", getMessage("NoSuchOperationData", id));
        return false;
      } else if (provider.isDynamic()) {
        context.put("message", getMessage("CanNotDeleteDynamicData", id));
        return false;
      } else if (! super.currentUser.hasServicePrivilege(provider.getService())) {
        context.put( "message", getMessage("HaveNoServicePrivilege", provider.getService()));
        return false;
      }
    }
    for (Long id : ids) {
      providerService.deleteStaticProvider(id);
View Full Code Here

    }
   
    public boolean enable(Long[] ids, Map<String, Object> context) {
    Map<Long, Provider> id2Provider = new HashMap<Long, Provider>();
    for (Long id : ids) {
      Provider provider = providerService.findProvider(id);
      if (provider == null) {
        context.put("message", getMessage("NoSuchOperationData", id));
        return false;
      } else if (! super.currentUser.hasServicePrivilege(provider.getService())) {
        context.put("message", getMessage("HaveNoServicePrivilege", provider.getService()));
        return false;
      }
      id2Provider.put(id, provider);
    }
    for (Long id : ids) {
View Full Code Here

TOP

Related Classes of com.alibaba.dubbo.registry.common.domain.Provider

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.