public static List<List<DormerType>> parseMultipleDormers(String key) { List<List<DormerType>> ret = new ArrayList<List<DormerType>>(); if (key == null) { return ret; } String[] split = key.split("\\."); for (String sideKeys : split) { List<DormerType> site = dormers(sideKeys); ret.add(site); } return ret; }
/** * @param sideKeys * @return */ public static List<DormerType> dormers(String sideKeys) { List<DormerType> site = new ArrayList<DormerType>(); for (int i = 0; i < sideKeys.length(); i++) { String dormerKey = sideKeys.substring(i, i + 1); site.add(parseDormer(dormerKey)); } return site; }
RoofTypeAliasEnum roofType = RoofParserUtil.parseRoofShape(type); if (roofType == null) { roofType = RoofTypeAliasEnum.FLAT; roof.setRoofTypeParameter(RoofParserUtil.parseRoofTypeParameter(roofType, type)); roof.setDormers(RoofParserUtil.parseMultipleDormers(dormer)); roof.setDormersFront(RoofParserUtil.parseSiteDormers("front", keys)); roof.setDormersLeft(RoofParserUtil.parseSiteDormers("left", keys)); roof.setDormersBack(RoofParserUtil.parseSiteDormers("back", keys)); roof.setDormersRight(RoofParserUtil.parseSiteDormers("right", keys)); Map<MeasurementKey, Measurement> measurements = RoofParserUtil.parseMeasurements(keys); RoofOrientation parseOrientation = RoofParserUtil.parseOrientation(keys);
public static Map<DormerRow, List<DormerType>> parseSiteDormers(String site, Map<String, String> keys) { Map<DormerRow, List<DormerType>> ret = new HashMap<DormerRow, List<DormerType>>(); for (DormerRow dr : DormerRow.values()) { String dormerValues = null; dormerValues = keys.get("3dr:dormers:" + site + ":" + dr.getKey()); if (dormerValues == null && DormerRow.ROW_1.equals(dr)) { dormerValues = keys.get("3dr:dormers:" + site); } if (dormerValues != null) { ret.put(dr, dormers(dormerValues)); } } return ret; }