Пример #1
0
 public void saveOwner(Owner owner) {
   List<Override> overrides =
       overrideService.findByServiceAndAddress(owner.getService(), Constants.ANYHOST_VALUE);
   if (overrides == null || overrides.size() == 0) {
     Override override = new Override();
     override.setAddress(Constants.ANYHOST_VALUE);
     override.setService(owner.getService());
     override.setEnabled(true);
     override.setParams("owner=" + owner.getUsername());
     overrideService.saveOverride(override);
   } else {
     for (Override override : overrides) {
       Map<String, String> params = StringUtils.parseQueryString(override.getParams());
       String usernames = params.get("owner");
       if (usernames == null || usernames.length() == 0) {
         usernames = owner.getUsername();
       } else {
         usernames = usernames + "," + owner.getUsername();
       }
       params.put("owner", usernames);
       override.setParams(StringUtils.toQueryString(params));
       overrideService.updateOverride(override);
     }
   }
 }
Пример #2
0
 private List<Owner> toOverrideLiset(List<Provider> pList, List<Override> cList) {
   Map<String, Owner> oList = new HashMap<String, Owner>();
   for (Provider p : pList) {
     if (p.getUsername() != null) {
       for (String username : Constants.COMMA_SPLIT_PATTERN.split(p.getUsername())) {
         Owner o = new Owner();
         o.setService(p.getService());
         o.setUsername(username);
         oList.put(o.getService() + "/" + o.getUsername(), o);
       }
     }
   }
   for (Override c : cList) {
     Map<String, String> params = StringUtils.parseQueryString(c.getParams());
     String usernames = params.get("owner");
     if (usernames != null && usernames.length() > 0) {
       for (String username : Constants.COMMA_SPLIT_PATTERN.split(usernames)) {
         Owner o = new Owner();
         o.setService(c.getService());
         o.setUsername(username);
         oList.put(o.getService() + "/" + o.getUsername(), o);
       }
     }
   }
   return new ArrayList<Owner>(oList.values());
 }