java.time.ZoneId#getAvailableZoneIds ( )源码实例Demo

下面列出了java.time.ZoneId#getAvailableZoneIds ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Test
public void testDates() throws StandardException {

    DatabaseContext dc = (DatabaseContext) ContextService.getContext(DatabaseContext.CONTEXT_ID);
    LocaleFinder localeFinder = (dc == null) ? null : dc.getDatabase();
    DescriptorSerializer dateDescriptorSerializer = DateV4DescriptorSerializer.INSTANCE_FACTORY.newInstance();

    try {
        // Encoding/decoding of dates should not be timezone-sensitive.
        for (String zId : ZoneId.getAvailableZoneIds()) {
            ZoneId zoneId = ZoneId.of(zId);
            for (String date : dates)
                testSingleDate(date, localeFinder, zoneId, dateDescriptorSerializer);
        }
    } catch (Exception e) {
        Assert.fail("Exception while testing Date encoding/decoding.");
    }
}
 
源代码2 项目: questdb   文件: TimeZoneRulesImplTest.java
@Test
public void testPerformance() {
    Set<String> allZones = ZoneId.getAvailableZoneIds();
    List<String> zoneList = new ArrayList<>(allZones);
    Collections.sort(zoneList);
    List<ZoneId> zones = new ArrayList<>(zoneList.size());
    List<TimeZoneRulesImpl> zoneRules = new ArrayList<>(zoneList.size());

    for (String z : zoneList) {
        ZoneId zone = ZoneId.of(z);
        zones.add(zone);
        zoneRules.add(new TimeZoneRulesImpl(zone.getRules()));
    }

    long millis = Timestamps.toMicros(1900, 1, 1, 0, 0);
    long deadline = Timestamps.toMicros(2615, 12, 31, 0, 0);

    while (millis < deadline) {
        for (int i = 0, n = zones.size(); i < n; i++) {
            zoneRules.get(i).getOffset(millis);
        }
        millis += Timestamps.DAY_MICROS;
    }
}
 
源代码3 项目: questdb   文件: TimeZoneRuleFactory.java
public TimeZoneRuleFactory() {
    int index = 0;
    for (String z : ZoneId.getAvailableZoneIds()) {
        ruleList.add(new TimeZoneRulesImpl(ZoneId.of(z).getRules()));
        ruleMap.put(z, index++);
    }

    for (Map.Entry<String, String> e : ZoneId.SHORT_IDS.entrySet()) {
        String key = e.getKey();
        String alias = e.getValue();

        // key already added somehow?
        int i = ruleMap.get(key);
        if (i == -1) {
            // no, good, add
            i = ruleMap.get(alias);
            if (i == -1) {
                // this could be fixed offset, try parsing value as one
                long offset = Timestamps.parseOffset(alias, 0, alias.length());
                if (offset != Long.MIN_VALUE) {
                    ruleList.add(new FixedTimeZoneRule(Numbers.decodeLowInt(offset) * Timestamps.MILLI_MICROS));
                    ruleMap.put(key, index++);
                }
            } else {
                ruleMap.put(key, i);
            }
        }
    }
}
 
源代码4 项目: teammates   文件: GetTimeZonesAction.java
@Override
public JsonResult execute() {
    String tzVersion = ZoneRulesProvider.getVersions("UTC").firstKey();
    Instant now = Instant.now();
    Map<String, Integer> tzOffsets = new TreeMap<>();
    for (String tz : ZoneId.getAvailableZoneIds()) {
        if (!tz.contains("SystemV")) {
            int offset = ZoneId.of(tz).getRules().getOffset(now).getTotalSeconds();
            tzOffsets.put(tz, offset);
        }
    }
    TimeZonesData output = new TimeZonesData(tzVersion, tzOffsets);
    return new JsonResult(output);
}
 
源代码5 项目: dragonwell8_jdk   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码6 项目: TencentKona-8   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码7 项目: TencentKona-8   文件: TCKZoneOffset.java
@Test
public void test_adjustInto_ZonedDateTime() {
    ZoneOffset base = ZoneOffset.ofHoursMinutesSeconds(1, 1, 1);
    for (String zoneId : ZoneId.getAvailableZoneIds()) {
        //Do not change offset of ZonedDateTime after adjustInto()
        ZonedDateTime zonedDateTime_target = ZonedDateTime.of(LocalDate.of(1909, 2, 2), LocalTime.of(10, 10, 10), ZoneId.of(zoneId));
        ZonedDateTime zonedDateTime_result = (ZonedDateTime)(base.adjustInto(zonedDateTime_target));
        assertEquals(zonedDateTime_target.getOffset(), zonedDateTime_result.getOffset());

        OffsetDateTime offsetDateTime_target = zonedDateTime_target.toOffsetDateTime();
        OffsetDateTime offsetDateTime_result = (OffsetDateTime)(base.adjustInto(offsetDateTime_target));
        assertEquals(base, offsetDateTime_result.getOffset());
    }
}
 
源代码8 项目: jdk8u-jdk   文件: TCKZoneOffset.java
@Test
public void test_adjustInto_ZonedDateTime() {
    ZoneOffset base = ZoneOffset.ofHoursMinutesSeconds(1, 1, 1);
    for (String zoneId : ZoneId.getAvailableZoneIds()) {
        //Do not change offset of ZonedDateTime after adjustInto()
        ZonedDateTime zonedDateTime_target = ZonedDateTime.of(LocalDate.of(1909, 2, 2), LocalTime.of(10, 10, 10), ZoneId.of(zoneId));
        ZonedDateTime zonedDateTime_result = (ZonedDateTime)(base.adjustInto(zonedDateTime_target));
        assertEquals(zonedDateTime_target.getOffset(), zonedDateTime_result.getOffset());

        OffsetDateTime offsetDateTime_target = zonedDateTime_target.toOffsetDateTime();
        OffsetDateTime offsetDateTime_result = (OffsetDateTime)(base.adjustInto(offsetDateTime_target));
        assertEquals(base, offsetDateTime_result.getOffset());
    }
}
 
源代码9 项目: jdk8u60   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码10 项目: cqrs-hotel   文件: JsonSerializationTest.java
private static Object randomValue(Class<?> type) {
    var random = ThreadLocalRandom.current();
    if (type == UUID.class) {
        return UUID.randomUUID();
    }
    if (type == LocalDate.class) {
        return LocalDate.of(
                random.nextInt(2000, 2100),
                random.nextInt(Month.JANUARY.getValue(), Month.DECEMBER.getValue() + 1),
                random.nextInt(1, Month.FEBRUARY.minLength() + 1));
    }
    if (type == Money.class) {
        return Money.of(
                random.nextDouble(0, 1000),
                pickRandom(Monetary.getCurrencies()));
    }
    if (type == Instant.class) {
        return Instant.ofEpochMilli(random.nextLong());
    }
    if (type == ZonedDateTime.class) {
        var zoneIds = ZoneId.getAvailableZoneIds();
        zoneIds.remove("GMT0"); // XXX: cannot be parsed by java.time.format.DateTimeFormatterBuilder.appendZoneRegionId - fixed in Java 9 https://bugs.openjdk.java.net/browse/JDK-8138664
        var zoneId = ZoneId.of(pickRandom(zoneIds));
        return Instant.ofEpochMilli(random.nextLong()).atZone(zoneId);
    }
    if (type == String.class) {
        return RandomStringUtils.randomAlphanumeric(random.nextInt(10));
    }
    if (type == int.class) {
        return random.nextInt();
    }
    if (type == Class.class) {
        return pickRandom(Arrays.asList(Integer.class, Long.class, Float.class, Double.class));
    }
    throw new IllegalArgumentException("Unsupported type: " + type);
}
 
源代码11 项目: openjdk-jdk8u   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码12 项目: openjdk-8-source   文件: TCKZoneOffset.java
@Test
public void test_adjustInto_ZonedDateTime() {
    ZoneOffset base = ZoneOffset.ofHoursMinutesSeconds(1, 1, 1);
    for (String zoneId : ZoneId.getAvailableZoneIds()) {
        //Do not change offset of ZonedDateTime after adjustInto()
        ZonedDateTime zonedDateTime_target = ZonedDateTime.of(LocalDate.of(1909, 2, 2), LocalTime.of(10, 10, 10), ZoneId.of(zoneId));
        ZonedDateTime zonedDateTime_result = (ZonedDateTime)(base.adjustInto(zonedDateTime_target));
        assertEquals(zonedDateTime_target.getOffset(), zonedDateTime_result.getOffset());

        OffsetDateTime offsetDateTime_target = zonedDateTime_target.toOffsetDateTime();
        OffsetDateTime offsetDateTime_result = (OffsetDateTime)(base.adjustInto(offsetDateTime_target));
        assertEquals(base, offsetDateTime_result.getOffset());
    }
}
 
源代码13 项目: openjdk-jdk8u-backup   文件: TCKZoneOffset.java
@Test
public void test_adjustInto_ZonedDateTime() {
    ZoneOffset base = ZoneOffset.ofHoursMinutesSeconds(1, 1, 1);
    for (String zoneId : ZoneId.getAvailableZoneIds()) {
        //Do not change offset of ZonedDateTime after adjustInto()
        ZonedDateTime zonedDateTime_target = ZonedDateTime.of(LocalDate.of(1909, 2, 2), LocalTime.of(10, 10, 10), ZoneId.of(zoneId));
        ZonedDateTime zonedDateTime_result = (ZonedDateTime)(base.adjustInto(zonedDateTime_target));
        assertEquals(zonedDateTime_target.getOffset(), zonedDateTime_result.getOffset());

        OffsetDateTime offsetDateTime_target = zonedDateTime_target.toOffsetDateTime();
        OffsetDateTime offsetDateTime_result = (OffsetDateTime)(base.adjustInto(offsetDateTime_target));
        assertEquals(base, offsetDateTime_result.getOffset());
    }
}
 
源代码14 项目: openjdk-jdk9   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码15 项目: jdk8u_jdk   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码16 项目: openjdk-8-source   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码17 项目: hottub   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码18 项目: jdk8u-jdk   文件: TCKZoneId.java
@Test
public void test_getAvailableGroupIds() {
    Set<String> zoneIds = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds.contains("Europe/London"), true);
    zoneIds.clear();
    assertEquals(zoneIds.size(), 0);
    Set<String> zoneIds2 = ZoneId.getAvailableZoneIds();
    assertEquals(zoneIds2.contains("Europe/London"), true);
}
 
源代码19 项目: Java-Coding-Problems   文件: DateTimes.java
public static List<String> localTimeToAllTimeZones8() {

        List<String> result = new ArrayList<>();
        Set<String> zoneIds = ZoneId.getAvailableZoneIds();

        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MMM-dd'T'HH:mm:ss a Z");

        ZonedDateTime zlt = ZonedDateTime.now();

        zoneIds.forEach((zoneId) -> {
            result.add(zlt.format(formatter) + " in " + zoneId + " is "
                    + zlt.withZoneSameInstant(ZoneId.of(zoneId)).format(formatter));
        });

        return result;
    }
 
源代码20 项目: tutorials   文件: UseZonedDateTimeUnitTest.java
@Test
public void whenRequestingZones_thenAtLeastOneIsReturned() {
    Set<String> allZoneIds = ZoneId.getAvailableZoneIds();

    assertThat(allZoneIds.size()).isGreaterThan(1);
}