code: public Properties setProperties(String pGroupKey, Properties pProperties) {
      XMLProperties old      = new XMLProperties();
      String        groupKey = pGroupKey;
  
      if (groupKey.charAt(groupKey.length()) != '.') {
        groupKey += ".";
      }
      Iterator iterator = pProperties.entrySet().iterator();
  
      while (iterator.hasNext()) {
        Map.Entry entry = (Map.Entry) iterator.next();
        String    key   = (String) entry.getKey();
        Object    obj   = setPropertyValue(groupKey + key, entry.getValue());
  
        // Return removed entries
        if (obj != null) {
          old.setPropertyValue(groupKey + key, entry.getValue());
        }
      }
      return ((old.size() > 0) ? old : null);
    }
docs: Sets the properties in the given properties group.
  Existing properties in the same group, will not be removed, unless they
  are replaced by new values.
  Any existing properties in the same group that was replaced, are
  returned. If no properties are replaced, <CODE>null<CODE> is
  returned.
  
  @param pGroupKey the group key
  @param pProperties the properties to set into this group
  
  @return Any existing properties in the same group that was replaced.
  If no properties are replaced, <CODE>null<CODE> is
  returned.