public static Settlement parse(String text) { Map<String, String> map = InfoboxMap.asMap(text); Settlement settlement = new Settlement(); Coordinate coordinate = new Coordinate(); for (String key : map.keySet()) { switch (key) { case NAME: settlement.setName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case STYLE: settlement.setType(InfoboxTypeParserUtil.getType(map.get(key))); break; case OFFICIAL_NAME: settlement.setOfficialName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case NATIVE_NAME: settlement.setNativeName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case NATIVE_NAME_LANG: settlement.setNativeNameLang(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case OTHER_NAME: settlement.setOtherName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case SETTLEMENT_TYPE: settlement.setSettlementType(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case LATITUDE: coordinate.setLatD(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGITUDE: coordinate.setLongD(map.get(key)); settlement.setCoordinate(coordinate); break; case LATD: coordinate.setLatD(map.get(key)); settlement.setCoordinate(coordinate); break; case LATM: coordinate.setLatM(map.get(key)); settlement.setCoordinate(coordinate); break; case LATS: coordinate.setLatS(map.get(key)); settlement.setCoordinate(coordinate); break; case LATDEG: coordinate.setLatD(map.get(key)); settlement.setCoordinate(coordinate); break; case LATMIN: coordinate.setLatM(map.get(key)); settlement.setCoordinate(coordinate); break; case LATSEC: coordinate.setLatS(map.get(key)); settlement.setCoordinate(coordinate); break; case LATNS: coordinate.setLatNS(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGD: coordinate.setLongD(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGM: coordinate.setLongM(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGS: coordinate.setLongS(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGDEG: coordinate.setLongD(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGMIN: coordinate.setLongM(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGSEC: coordinate.setLongS(map.get(key)); settlement.setCoordinate(coordinate); break; case LONGEW: coordinate.setLongEW(map.get(key)); settlement.setCoordinate(coordinate); break; case WEB: settlement.setWebsite(InfoboxWebsiteParserUtil.getWebsite(map.get(key))); break; case WEBSITE: settlement.setWebsite(InfoboxWebsiteParserUtil.getWebsite(map.get(key))); break; } } return settlement; }
public static Settlement parse(String text) { Map<String, String> map = WikipediaInfoboxParserUtils.asMap(text); Settlement settlement = new Settlement(); Coordinates coordinates = new Coordinates(); for (String key : map.keySet()) { try { switch (key) { case NAME: settlement.setName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case STYLE: settlement.setType(InfoboxTypeParserUtil.getType(map.get(key))); break; case OFFICIAL_NAME: settlement.setOfficialName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case NATIVE_NAME: settlement.setNativeName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case OTHER_NAME: settlement.setOtherName(InfoboxParserUtil.removeAllParenthesis(map.get(key))); break; case LATITUDE: coordinates.setLatD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGITUDE: coordinates.setLongD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATD: coordinates.setLatD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATM: coordinates.setLatM(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATS: coordinates.setLatS(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATDEG: coordinates.setLatD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATMIN: coordinates.setLatM(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATSEC: coordinates.setLatS(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LATNS: coordinates.setLatNS(map.get(key)); settlement.setCoordinates(coordinates); break; case LONGD: coordinates.setLongD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGM: coordinates.setLongM(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGS: coordinates.setLongS(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGDEG: coordinates.setLongD(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGMIN: coordinates.setLongM(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGSEC: coordinates.setLongS(Double.parseDouble(map.get(key))); settlement.setCoordinates(coordinates); break; case LONGEW: coordinates.setLongEW(map.get(key)); settlement.setCoordinates(coordinates); break; case WEB: settlement.setWebsite(WikipediaInfoboxParserUtils.parseAsURL(map.get(key))); break; case WEBU: settlement.setWebsite(WikipediaInfoboxParserUtils.parseAsURL(map.get(key))); break; case WEBSITE: settlement.setWebsite(WikipediaInfoboxParserUtils.parseAsURL(map.get(key))); break; } } catch (Exception e) { } } return settlement; }