From e68bd041c96ae1e8163ef541e9bae168d104e1fc Mon Sep 17 00:00:00 2001 From: Isira Seneviratne Date: Sat, 25 Mar 2023 16:19:14 +0530 Subject: [PATCH] Simplify time ago calculation. --- .../extractor/localization/TimeAgoParser.java | 30 ++----------------- 1 file changed, 3 insertions(+), 27 deletions(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/localization/TimeAgoParser.java b/extractor/src/main/java/org/schabi/newpipe/extractor/localization/TimeAgoParser.java index 7680bebd9..a6358269d 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/localization/TimeAgoParser.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/localization/TimeAgoParser.java @@ -105,34 +105,10 @@ public class TimeAgoParser { } private DateWrapper getResultFor(final int timeAgoAmount, final ChronoUnit chronoUnit) { - OffsetDateTime offsetDateTime = now; - boolean isApproximation = false; - - switch (chronoUnit) { - case SECONDS: - case MINUTES: - case HOURS: - offsetDateTime = offsetDateTime.minus(timeAgoAmount, chronoUnit); - break; - - case DAYS: - case WEEKS: - case MONTHS: - offsetDateTime = offsetDateTime.minus(timeAgoAmount, chronoUnit); - isApproximation = true; - break; - - case YEARS: - // minusDays is needed to prevent `PrettyTime` from showing '12 months ago'. - offsetDateTime = offsetDateTime.minusYears(timeAgoAmount).minusDays(1); - isApproximation = true; - break; - } - - if (isApproximation) { + OffsetDateTime offsetDateTime = now.minus(timeAgoAmount, chronoUnit); + if (chronoUnit.isDateBased()) { offsetDateTime = offsetDateTime.truncatedTo(ChronoUnit.HOURS); } - - return new DateWrapper(offsetDateTime, isApproximation); + return new DateWrapper(offsetDateTime, chronoUnit.isDateBased()); } }