MCPcopy Create free account
hub / github.com/MenoData/Time4J / from

Method from

base/src/main/java/net/time4j/Duration.java:607–681  ·  view source on GitHub ↗
(TemporalAmount threeten)

Source from the content-addressed store, hash-verified

605 * @since 4.0
606 */
607 public static Duration<IsoUnit> from(TemporalAmount threeten) {
608
609 Duration<IsoUnit> result = Duration.ofZero();
610
611 for (TemporalUnit tu : threeten.getUnits()) {
612 long amount = threeten.get(tu);
613
614 if (amount == 0) {
615 continue;
616 }
617
618 IsoUnit unit;
619
620 if (tu instanceof java.time.temporal.ChronoUnit) {
621 switch (java.time.temporal.ChronoUnit.class.cast(tu)) {
622 case NANOS:
623 unit = ClockUnit.NANOS;
624 break;
625 case MICROS:
626 unit = ClockUnit.MICROS;
627 break;
628 case MILLIS:
629 unit = ClockUnit.MILLIS;
630 break;
631 case SECONDS:
632 unit = ClockUnit.SECONDS;
633 break;
634 case MINUTES:
635 unit = ClockUnit.MINUTES;
636 break;
637 case HOURS:
638 unit = ClockUnit.HOURS;
639 break;
640 case HALF_DAYS:
641 unit = ClockUnit.HOURS;
642 amount = Math.multiplyExact(amount, 12);
643 break;
644 case DAYS:
645 unit = CalendarUnit.DAYS;
646 break;
647 case WEEKS:
648 unit = CalendarUnit.WEEKS;
649 break;
650 case MONTHS:
651 unit = CalendarUnit.MONTHS;
652 break;
653 case YEARS:
654 unit = CalendarUnit.YEARS;
655 break;
656 case DECADES:
657 unit = CalendarUnit.DECADES;
658 break;
659 case CENTURIES:
660 unit = CalendarUnit.CENTURIES;
661 break;
662 case MILLENNIA:
663 unit = CalendarUnit.MILLENNIA;
664 break;

Callers 5

printMethod · 0.95
formatMethod · 0.95
printMethod · 0.95

Calls 9

ofZeroMethod · 0.95
weekBasedYearsMethod · 0.95
getMethod · 0.65
withMethod · 0.65
translateMethod · 0.65
getUnitsMethod · 0.45
castMethod · 0.45
equalsMethod · 0.45
plusMethod · 0.45

Tested by 2