public static Map mergeIntoNewEnv()

in rake-runner-agent/src/jetbrains/buildServer/agent/rakerunner/utils/EnvUtil.java [29:52]


  public static Map<String, String> mergeIntoNewEnv(@NotNull final Map<String, String> modified,
                                                    @NotNull final Map<String, String> original,
                                                    @NotNull final Collection<String> restricted) {
    final HashMap<String, String> map = new HashMap<String, String>();
    for (String key : modified.keySet()) {
      final String ov = original.get(key);
      if (restricted.contains(key)) {
        continue;
      }
      final String mv = modified.get(key);
      if (ov == null || !ov.equals(mv)) {
        map.put(key, mv);
      } else {
        map.put(key, ov);
      }
    }
    for (String key : restricted) {
      final String ov = original.get(key);
      if (ov != null) {
        map.put(key, ov);
      }
    }
    return map;
  }