make/tools/src/build/tools/cldrconverter/LDMLParseHandler.java

Print this page

        

*** 153,162 **** --- 153,165 ---- pushStringArrayEntry(qName, attributes, prefix + "MonthNames/" + getContainerKey(), 13); break; case "abbreviated": pushStringArrayEntry(qName, attributes, prefix + "MonthAbbreviations/" + getContainerKey(), 13); break; + case "narrow": + pushStringArrayEntry(qName, attributes, prefix + "MonthNarrows/" + getContainerKey(), 13); + break; default: pushIgnoredContainer(qName); break; } }
*** 189,198 **** --- 192,204 ---- pushStringArrayEntry(qName, attributes, prefix + "DayNames/" + getContainerKey(), 7); break; case "abbreviated": pushStringArrayEntry(qName, attributes, prefix + "DayAbbreviations/" + getContainerKey(), 7); break; + case "narrow": + pushStringArrayEntry(qName, attributes, prefix + "DayNarrows/" + getContainerKey(), 7); + break; default: pushIgnoredContainer(qName); break; } }
*** 217,235 **** } break; case "dayPeriodWidth": // for FormatData // create string array entry for am/pm. only keeping wide ! if ("wide".equals(attributes.getValue("type"))) { pushStringArrayEntry(qName, attributes, "AmPmMarkers/" + getContainerKey(), 2); ! } else { pushIgnoredContainer(qName); } break; case "dayPeriod": // for FormatData // add to string array entry of AmPmMarkers element switch (attributes.getValue("type")) { case "am": pushStringArrayElement(qName, attributes, 0); break; case "pm": --- 223,248 ---- } break; case "dayPeriodWidth": // for FormatData // create string array entry for am/pm. only keeping wide ! switch (attributes.getValue("type")) { ! case "wide": pushStringArrayEntry(qName, attributes, "AmPmMarkers/" + getContainerKey(), 2); ! break; ! case "narrow": ! pushStringArrayEntry(qName, attributes, "narrow.AmPmMarkers/" + getContainerKey(), 2); ! break; ! default: pushIgnoredContainer(qName); + break; } break; case "dayPeriod": // for FormatData // add to string array entry of AmPmMarkers element + if (attributes.getValue("alt") == null) { switch (attributes.getValue("type")) { case "am": pushStringArrayElement(qName, attributes, 0); break; case "pm":
*** 237,246 **** --- 250,263 ---- break; default: pushIgnoredContainer(qName); break; } + } else { + // discard alt values + pushIgnoredContainer(qName); + } break; case "eraNames": // CLDR era names are inconsistent in terms of their lengths. For example, // the full names of Japanese imperial eras are eraAbbr, while the full names // of the Julian eras are eraNames.
*** 267,277 **** // mainly used for the Japanese imperial calendar if (currentCalendarType == null) { assert currentContainer instanceof IgnoredContainer; pushIgnoredContainer(qName); } else { ! String key = currentCalendarType.keyElementName() + "short.Eras"; pushStringArrayEntry(qName, attributes, key, currentCalendarType.getEraLength(qName)); } break; case "era": // for FormatData --- 284,294 ---- // mainly used for the Japanese imperial calendar if (currentCalendarType == null) { assert currentContainer instanceof IgnoredContainer; pushIgnoredContainer(qName); } else { ! String key = currentCalendarType.keyElementName() + "narrow.Eras"; pushStringArrayEntry(qName, attributes, key, currentCalendarType.getEraLength(qName)); } break; case "era": // for FormatData
*** 299,317 **** case "timeZoneNames": pushContainer(qName, attributes); break; case "zone": { ! String zone = attributes.getValue("type"); zonePrefix = CLDRConverter.TIMEZONE_ID_PREFIX; ! put(zonePrefix + zone, new HashMap<String, String>()); ! pushKeyContainer(qName, attributes, zone); } break; case "metazone": { ! String zone = attributes.getValue("type"); zonePrefix = CLDRConverter.METAZONE_ID_PREFIX; put(zonePrefix + zone, new HashMap<String, String>()); pushKeyContainer(qName, attributes, zone); } break; --- 316,334 ---- case "timeZoneNames": pushContainer(qName, attributes); break; case "zone": { ! String tzid = attributes.getValue("type"); // Olson tz id zonePrefix = CLDRConverter.TIMEZONE_ID_PREFIX; ! put(zonePrefix + tzid, new HashMap<String, String>()); ! pushKeyContainer(qName, attributes, tzid); } break; case "metazone": { ! String zone = attributes.getValue("type"); // LDML meta zone id zonePrefix = CLDRConverter.METAZONE_ID_PREFIX; put(zonePrefix + zone, new HashMap<String, String>()); pushKeyContainer(qName, attributes, zone); } break;
*** 321,340 **** break; case "short": zoneNameStyle = "short"; pushContainer(qName, attributes); break; ! case "generic": // not used in JDK ! pushIgnoredContainer(qName); ! break; ! case "standard": // standard time ! pushStringEntry(qName, attributes, CLDRConverter.TIMEZONE_NAME_PREFIX + "standard." + zoneNameStyle); ! break; ! case "daylight": ! pushStringEntry(qName, attributes, CLDRConverter.TIMEZONE_NAME_PREFIX + "daylight." + zoneNameStyle); break; ! case "exemplarCity": pushIgnoredContainer(qName); break; // // Number format information --- 338,353 ---- break; case "short": zoneNameStyle = "short"; pushContainer(qName, attributes); break; ! case "generic": // generic name ! case "standard": // standard time name ! case "daylight": // daylight saving (summer) time name ! pushStringEntry(qName, attributes, CLDRConverter.ZONE_NAME_PREFIX + qName + "." + zoneNameStyle); break; ! case "exemplarCity": // not used in JDK pushIgnoredContainer(qName); break; // // Number format information
*** 528,537 **** --- 541,551 ---- break; case "timeZoneNames": zonePrefix = null; break; + case "generic": case "standard": case "daylight": if (zonePrefix != null && (currentContainer instanceof Entry)) { @SuppressWarnings("unchecked") Map<String, String> valmap = (Map<String, String>) get(zonePrefix + getContainerKey());