・緑黄色野菜 修正
[nucalgen] / src / main / java / jp / satomichan / nucalgen / NutritionColumnHolder.java
1 package jp.satomichan.nucalgen;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import org.apache.commons.configuration.XMLConfiguration;
7
8 public class NutritionColumnHolder {
9
10         private List<NutritionColumn> nutritionColumnList;
11
12         List<NutritionColumn> getNutritionColumnList() {
13                 return this.nutritionColumnList;
14         }
15
16         void addNutritionColumn(NutritionColumn aNutritionColumn) {
17                 this.nutritionColumnList.add(aNutritionColumn);
18         }
19
20         NutritionColumnHolder(XMLConfiguration aConfig){
21                 this.nutritionColumnList = new ArrayList<NutritionColumn>();
22
23                 List<Object> names = aConfig.getList("cols.column.name");
24                 List<Object> tables = aConfig.getList("cols.column.table");
25                 List<Object> dispNames = aConfig.getList("cols.column.disp_name");
26                 List<Object> aliases = aConfig.getList("cols.column.alias");
27                 List<Object> formats = aConfig.getList("cols.column.format");
28                 List<Object> units = aConfig.getList("cols.column.unit");
29                 List<Object> useRawValue = aConfig.getList("cols.column.use_raw_value");
30                 List<Object> useSum = aConfig.getList("cols.column.use_sum");
31
32                 for (Object aName : names) {
33                         NutritionColumn nc = new NutritionColumn();
34                         nc.setName((String) aName);
35                         nc.setTable((String) tables.get(names.indexOf(aName)));
36                         nc.setDispName((String) dispNames.get(names.indexOf(aName)));
37                         nc.setAlias((String) aliases.get(names.indexOf(aName)));
38                         nc.setFormat((String) formats.get(names.indexOf(aName)));
39                         nc.setUnit((String) units.get(names.indexOf(aName)));
40                         nc.setUseRawValue(((String)useRawValue.get(names.indexOf(aName))).equalsIgnoreCase("true"));
41                         nc.setUseSum(((String)useSum.get(names.indexOf(aName))).equalsIgnoreCase("true"));
42
43                         this.addNutritionColumn(nc);
44                 }
45
46         }
47
48
49         public String toString() {
50                 String ret = "";
51                 for(NutritionColumn aColumn : this.getNutritionColumnList()) {
52                         ret += aColumn + "\n";
53                 }
54
55                 return ret;
56         }
57
58
59
60 }