eace7f3fb7dd1d5070ef4b046d6ed5888efaa7d0
[debian/openrocket] / core / src / net / sf / openrocket / preset / loader / LineMaterialColumnParser.java
1 package net.sf.openrocket.preset.loader;
2
3 import net.sf.openrocket.material.Material;
4 import net.sf.openrocket.preset.TypedKey;
5 import net.sf.openrocket.preset.TypedPropertyMap;
6
7 public class LineMaterialColumnParser extends BaseColumnParser {
8
9         private final MaterialHolder materialMap;
10
11         private final TypedKey<Material> param;
12         
13         public LineMaterialColumnParser(MaterialHolder materialMap, String columnName, TypedKey<Material> param) {
14                 super(columnName);
15                 this.param = param;
16                 this.materialMap = materialMap;
17         }
18         
19
20         @Override
21         protected void doParse(String columnData, String[] data, TypedPropertyMap props) {
22
23                 if ( columnData == null || "".equals(columnData.trim())) {
24                         return;
25                 }
26                 
27                 Material.Line myMaterial = (Material.Line) Material.newUserMaterial(Material.Type.LINE, columnData, 0.0);
28
29                 Material.Line m = materialMap.getLineMaterial(myMaterial);
30                 props.put(param, m!=null? m : myMaterial);
31
32         }
33
34 }