code: public static void copy(Struct source, Struct target, boolean overwrite) {
  	Iterator<Entry<Key, Object>> it = source.entryIterator();
  	Entry<Key, Object> e;
  	while (it.hasNext()) {
  	    e = it.next();
  	    if (overwrite || !target.containsKey(e.getKey())) target.setEL(e.getKey(), e.getValue());
  	}
      }
docs: copy data from source struct to target struct
  
  @param source
  @param target
  @param overwrite overwrite data if exist in target