< prev index next >
make/src/classes/build/tools/tzdb/TzdbZoneRulesCompiler.java
Print this page
@@ -65,12 +65,12 @@
import java.nio.file.Path;
import java.nio.file.Paths;
import java.text.ParsePosition;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
+import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.NoSuchElementException;
import java.util.Scanner;
import java.util.SortedMap;
@@ -231,11 +231,11 @@
out.writeShort(regionArray.length);
for (String regionId : regionArray) {
out.writeUTF(regionId);
}
// rules -- hashset -> remove the dup
- List<ZoneRules> rulesList = new ArrayList<>(new HashSet<>(builtZones.values()));
+ List<ZoneRules> rulesList = new ArrayList<>(new LinkedHashSet<>(builtZones.values()));
out.writeShort(rulesList.size());
ByteArrayOutputStream baos = new ByteArrayOutputStream(1024);
for (ZoneRules rules : rulesList) {
baos.reset();
DataOutputStream dataos = new DataOutputStream(baos);
@@ -273,17 +273,17 @@
private static final Pattern MONTH = Pattern.compile("(?i)(jan)|(feb)|(mar)|(apr)|(may)|(jun)|(jul)|(aug)|(sep)|(oct)|(nov)|(dec)");
private static final Matcher DOW = Pattern.compile("(?i)(mon)|(tue)|(wed)|(thu)|(fri)|(sat)|(sun)").matcher("");
private static final Matcher TIME = Pattern.compile("(?<neg>-)?+(?<hour>[0-9]{1,2})(:(?<minute>[0-5][0-9]))?+(:(?<second>[0-5][0-9]))?+").matcher("");
/** The TZDB rules. */
- private final Map<String, List<TZDBRule>> rules = new HashMap<>();
+ private final Map<String, List<TZDBRule>> rules = new LinkedHashMap<>();
/** The TZDB zones. */
- private final Map<String, List<TZDBZone>> zones = new HashMap<>();
+ private final Map<String, List<TZDBZone>> zones = new LinkedHashMap<>();
/** The TZDB links. */
- private final Map<String, String> links = new HashMap<>();
+ private final Map<String, String> links = new LinkedHashMap<>();
/** The built zones. */
private final SortedMap<String, ZoneRules> builtZones = new TreeMap<>();
/** Whether to output verbose messages. */
< prev index next >