package net.sf.openrocket.preset.loader;
-import java.util.Collections;
-import java.util.Map;
-
import net.sf.openrocket.material.Material;
import net.sf.openrocket.preset.ComponentPreset;
import net.sf.openrocket.preset.TypedKey;
public class MaterialColumnParser extends BaseColumnParser {
- private Map<String,Material> materialMap = Collections.<String,Material>emptyMap();
+ private final MaterialHolder materialMap;
private final TypedKey<Material> param;
- public MaterialColumnParser(Map<String,Material> materialMap, String columnName, TypedKey<Material> param) {
+ public MaterialColumnParser(MaterialHolder materialMap, String columnName, TypedKey<Material> param) {
super(columnName);
this.param = param;
this.materialMap = materialMap;
}
- public MaterialColumnParser(Map<String,Material> materialMap) {
+ public MaterialColumnParser(MaterialHolder materialMap) {
this(materialMap, "Material", ComponentPreset.MATERIAL);
}
return;
}
- Material m = materialMap.get(columnData);
- if ( m == null ) {
- m = new Material.Bulk(columnData, 0.0, true);
- }
- props.put(param, m);
+ Material.Bulk tmpMaterial = (Material.Bulk) Material.newUserMaterial( Material.Type.BULK,columnData, 0.0);
+ Material.Bulk m = materialMap.getBulkMaterial(tmpMaterial);
+ props.put(param, m!= null ? m : tmpMaterial);
}