1 package net.sf.openrocket.preset.loader;
3 import net.sf.openrocket.database.Databases;
4 import net.sf.openrocket.material.Material;
5 import net.sf.openrocket.preset.ComponentPreset;
6 import net.sf.openrocket.preset.TypedKey;
7 import net.sf.openrocket.preset.TypedPropertyMap;
9 public class MaterialColumnParser extends BaseColumnParser {
11 private final MaterialHolder materialMap;
13 private final TypedKey<Material> param;
15 public MaterialColumnParser(MaterialHolder materialMap, String columnName, TypedKey<Material> param) {
18 this.materialMap = materialMap;
21 public MaterialColumnParser(MaterialHolder materialMap) {
22 this(materialMap, "Material", ComponentPreset.MATERIAL);
27 protected void doParse(String columnData, String[] data, TypedPropertyMap props) {
29 if (columnData == null || "".equals(columnData.trim())) {
33 Material.Bulk tmpMaterial = (Material.Bulk) Databases.findMaterial(Material.Type.BULK, columnData, 0.0);
34 Material.Bulk m = materialMap.getBulkMaterial(tmpMaterial);
35 props.put(param, m != null ? m : tmpMaterial);