code: public ChameleonTargetConfiguration importConfiguration(ChameleonTargetConfiguration other) {
  
          if (this.container == null || this.container.isEmpty()) {
              this.container = other.getContainer();
          }
  
          if (this.version == null || this.version.isEmpty()) {
              this.version = other.getVersion();
          }
  
          if (this.mode == null) {
              this.mode = other.getMode();
          }
  
          final Set<Map.Entry<String, String>> entries = other.getCustomProperties().entrySet();
  
          for (Map.Entry<String, String> entry : entries) {
              if (! this.customProperties.containsKey(entry.getKey())) {
                  this.customProperties.put(entry.getKey(), entry.getValue());
              }
          }
  
          return this;
      }
docs: This methods copies attribute values that are not set in this object other object
  @param other object where attribute values are copied in case of not set in this object
  @return this object with new attribute values set