List of usage examples for java.time.temporal ChronoUnit WEEKS
ChronoUnit WEEKS
To view the source code for java.time.temporal ChronoUnit WEEKS.
Click Source Link
From source file:Main.java
public static void main(String[] args) { Year y = Year.of(2014); Year l = y.minus(12, ChronoUnit.WEEKS); System.out.println(l); }
From source file:Main.java
public static void main(String[] args) { LocalDateTime timePoint = LocalDateTime.now(); LocalDateTime newDateTime = timePoint.plus(3, ChronoUnit.WEEKS).plus(3, ChronoUnit.YEARS); System.out.println(newDateTime); }
From source file:Main.java
public static void main(String[] args) { OffsetDateTime o = OffsetDateTime.now(); long d = o.until(OffsetDateTime.now(ZoneId.systemDefault()), ChronoUnit.WEEKS); System.out.println(d);// w w w.ja v a2 s .c o m }
From source file:com.ikanow.aleph2.data_model.utils.TimeUtils.java
/** The simplest date parsing utility - only handles daily/hourly/monthly type strings (1d, d, daily, day - etc). Note "m" is ambiguous and not supported, use "min" or "month" * @param human_readable_period - daily/hourly/monthly type strings (1d, d, daily, day - etc). Note "m" is ambiguous and not supported, use "min" or "month" * @return a ChronoUnit if successful, else a generic error string *//* w w w . j a va 2 s.c o m*/ public static Validation<String, ChronoUnit> getTimePeriod(final String human_readable_period) { return Patterns .match(Optional.ofNullable(human_readable_period).orElse("").toLowerCase().replaceAll("\\s+", "")) .<Validation<String, ChronoUnit>>andReturn() .when(d -> d.equals("1d"), __ -> Validation.success(ChronoUnit.DAYS)) .when(d -> d.equals("d"), __ -> Validation.success(ChronoUnit.DAYS)) .when(d -> d.equals("1day"), __ -> Validation.success(ChronoUnit.DAYS)) .when(d -> d.equals("day"), __ -> Validation.success(ChronoUnit.DAYS)) .when(d -> d.equals("daily"), __ -> Validation.success(ChronoUnit.DAYS)) .when(d -> d.equals("1w"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("w"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("1wk"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("wk"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("1week"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("week"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("weekly"), __ -> Validation.success(ChronoUnit.WEEKS)) .when(d -> d.equals("1month"), __ -> Validation.success(ChronoUnit.MONTHS)) .when(d -> d.equals("month"), __ -> Validation.success(ChronoUnit.MONTHS)) .when(d -> d.equals("monthly"), __ -> Validation.success(ChronoUnit.MONTHS)) .when(d -> d.equals("1sec"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("sec"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("1s"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("s"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("1second"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("second"), __ -> Validation.success(ChronoUnit.SECONDS)) .when(d -> d.equals("1min"), __ -> Validation.success(ChronoUnit.MINUTES)) .when(d -> d.equals("min"), __ -> Validation.success(ChronoUnit.MINUTES)) .when(d -> d.equals("1minute"), __ -> Validation.success(ChronoUnit.MINUTES)) .when(d -> d.equals("minute"), __ -> Validation.success(ChronoUnit.MINUTES)) .when(d -> d.equals("1h"), __ -> Validation.success(ChronoUnit.HOURS)) .when(d -> d.equals("h"), __ -> Validation.success(ChronoUnit.HOURS)) .when(d -> d.equals("1hour"), __ -> Validation.success(ChronoUnit.HOURS)) .when(d -> d.equals("hour"), __ -> Validation.success(ChronoUnit.HOURS)) .when(d -> d.equals("hourly"), __ -> Validation.success(ChronoUnit.HOURS)) .when(d -> d.equals("1y"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("y"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("1year"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("year"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("1yr"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("yr"), __ -> Validation.success(ChronoUnit.YEARS)) .when(d -> d.equals("yearly"), __ -> Validation.success(ChronoUnit.YEARS)) .otherwise(__ -> Validation .fail(ErrorUtils.get(ErrorUtils.INVALID_DATETIME_FORMAT, human_readable_period))); }
From source file:nu.yona.server.analysis.service.InactivityManagementService.java
public void createInactivityEntities(UUID userAnonymizedId, Set<IntervalInactivityDto> intervalInactivities) { try (LockPool<UUID>.Lock lock = userAnonymizedSynchronizer.lock(userAnonymizedId)) { transactionHelper.executeInNewTransaction(() -> { UserAnonymizedDto userAnonymized = userAnonymizedService.getUserAnonymized(userAnonymizedId); createWeekInactivityEntities(userAnonymizedId, intervalInactivities.stream() .filter(ia -> ia.getTimeUnit() == ChronoUnit.WEEKS).collect(Collectors.toSet())); createDayInactivityEntities(userAnonymized, intervalInactivities.stream() .filter(ia -> ia.getTimeUnit() == ChronoUnit.DAYS).collect(Collectors.toSet())); });/*from ww w .java 2 s. c o m*/ } }
From source file:com.yahoo.egads.models.tsmm.TestOlympicModel2.java
@Test public void ctor() throws Exception { OlympicModel2 model = new OlympicModel2(config); assertEquals(5, model.interval);// www.j a v a 2s. co m assertEquals(ChronoUnit.MINUTES, model.intervalUnits); assertEquals(1, model.windowDistanceInterval); assertEquals(ChronoUnit.WEEKS, model.windowDistanceIntervalUnits); assertEquals(4, model.pastWindows); assertEquals(start, model.modelStartEpoch); assertEquals(ZoneId.of("UTC"), model.zone); assertFalse(model.weighting); assertEquals(1, model.futureWindows); assertEquals(0, model.drop_highest); assertEquals(0, model.drop_lowest); assertEquals(4, model.windowTimes.length); assertEquals(4, model.indices.length); assertTrue(model.model.isEmpty()); // overrides config.clear(); config.put("INTERVAL", "5"); config.put("INTERVAL_UNITS", "MINUTES"); config.put("WINDOW_SIZE", "1"); config.put("WINDOW_SIZE_UNITS", "HOURS"); config.put("WINDOW_DISTANCE", "1"); config.put("WINDOW_DISTANCE_UNITS", "WEEKS"); config.put("HISTORICAL_WINDOWS", "4"); config.put("MODEL_START", Long.toString(start)); config.put("TIMEZONE", "Australia/Lord_Howe"); config.put("ENABLE_WEIGHTING", "true"); config.put("FUTURE_WINDOWS", "2"); config.put("NUM_TO_DROP_HIGHEST", "4"); config.put("NUM_TO_DROP_LOWEST", "8"); model = new OlympicModel2(config); assertEquals(5, model.interval); assertEquals(ChronoUnit.MINUTES, model.intervalUnits); assertEquals(1, model.windowDistanceInterval); assertEquals(ChronoUnit.WEEKS, model.windowDistanceIntervalUnits); assertEquals(4, model.pastWindows); assertEquals(start, model.modelStartEpoch); assertEquals(ZoneId.of("Australia/Lord_Howe"), model.zone); assertTrue(model.weighting); assertEquals(2, model.futureWindows); assertEquals(4, model.drop_highest); assertEquals(8, model.drop_lowest); assertEquals(4, model.windowTimes.length); assertEquals(4, model.indices.length); assertTrue(model.model.isEmpty()); // null config, underlying ctor throws an NPE, should fix it. try { model = new OlympicModel2(null); fail("Expected NullPointerException"); } catch (NullPointerException e) { } // Empty config config.clear(); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } // lots of missing required values tests. setConfig(); config.remove("INTERVAL"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("INTERVAL_UNITS"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("WINDOW_SIZE"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("WINDOW_SIZE_UNITS"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("WINDOW_DISTANCE"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("WINDOW_DISTANCE_UNITS"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.remove("MODEL_START"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); model = new OlympicModel2(config); assertEquals(1, model.pastWindows); assertEquals(ZoneId.of("UTC"), model.zone); // invalid params tests setConfig(); config.setProperty("WINDOW_SIZE", "not a number"); try { model = new OlympicModel2(config); fail("Expected NumberFormatException"); } catch (NumberFormatException e) { } setConfig(); config.setProperty("WINDOW_SIZE_UNITS", "not a unit"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.setProperty("WINDOW_DISTANCE", "not a number"); try { model = new OlympicModel2(config); fail("Expected NumberFormatException"); } catch (NumberFormatException e) { } setConfig(); config.setProperty("WINDOW_DISTANCE_UNITS", "not a unit"); try { model = new OlympicModel2(config); fail("Expected IllegalArgumentException"); } catch (IllegalArgumentException e) { } setConfig(); config.setProperty("MODEL_START", "not a number"); try { model = new OlympicModel2(config); fail("Expected NumberFormatException"); } catch (NumberFormatException e) { } }
From source file:devbury.dewey.plugins.RemindMe.java
private Date notifyAt(long amount, String units) { ChronoUnit chronoUnit = ChronoUnit.SECONDS; switch (units) { case "weeks": case "week": chronoUnit = ChronoUnit.WEEKS; break;/*from w w w. j a v a2 s. c om*/ case "months": case "month": chronoUnit = ChronoUnit.MONTHS; break; case "days": case "day": chronoUnit = ChronoUnit.DAYS; break; case "hours": case "hour": chronoUnit = ChronoUnit.HOURS; break; case "minutes": case "minute": chronoUnit = ChronoUnit.MINUTES; break; } return Date.from(Instant.now().plus(amount, chronoUnit)); }
From source file:com.ikanow.aleph2.data_model.utils.TimeUtils.java
/** Returns the suffix of a time-based index given the grouping period * @param grouping_period - the grouping period * @param lowest_granularity// w w w . j a va2s .c o m * @return the index suffix, ie added to the base index */ public static String getTimeBasedSuffix(final ChronoUnit grouping_period, final Optional<ChronoUnit> lowest_granularity) { return lowest_granularity .map(lg -> grouping_period.compareTo(lg) < 0 ? getTimeBasedSuffix(lg, Optional.empty()) : null) .orElse(Patterns.match(grouping_period).<String>andReturn() .when(p -> ChronoUnit.SECONDS == p, __ -> "yyyy.MM.dd.HH:mm:ss") .when(p -> ChronoUnit.MINUTES == p, __ -> "yyyy.MM.dd.HH:mm") .when(p -> ChronoUnit.HOURS == p, __ -> "yyyy.MM.dd.HH") .when(p -> ChronoUnit.DAYS == p, __ -> "yyyy.MM.dd") .when(p -> ChronoUnit.WEEKS == p, __ -> "YYYY-ww") // (deliberately 'Y' (week-year) not 'y' since 'w' is week-of-year .when(p -> ChronoUnit.MONTHS == p, __ -> "yyyy.MM") .when(p -> ChronoUnit.YEARS == p, __ -> "yyyy").otherwise(__ -> "")); }
From source file:com.ikanow.aleph2.core.shared.utils.TimeSliceDirUtils.java
/** Low level util because java8 time "plus" is odd * @param to_adjust//w w w. j a va 2s.c o m * @param increment * @return */ private static Date adjustTime(Date to_adjust, ChronoUnit increment) { return Patterns.match(increment).<Date>andReturn() .when(t -> t == ChronoUnit.SECONDS, __ -> DateUtils.addSeconds(to_adjust, 1)) .when(t -> t == ChronoUnit.MINUTES, __ -> DateUtils.addMinutes(to_adjust, 1)) .when(t -> t == ChronoUnit.HOURS, __ -> DateUtils.addHours(to_adjust, 1)) .when(t -> t == ChronoUnit.DAYS, __ -> DateUtils.addDays(to_adjust, 1)) .when(t -> t == ChronoUnit.WEEKS, __ -> DateUtils.addWeeks(to_adjust, 1)) .when(t -> t == ChronoUnit.MONTHS, __ -> DateUtils.addMonths(to_adjust, 1)) .when(t -> t == ChronoUnit.YEARS, __ -> DateUtils.addYears(to_adjust, 1)).otherwiseAssert(); }
From source file:nu.yona.server.analysis.service.ActivityService.java
private Page<WeekActivityOverviewDto> getWeekActivityOverviews(UUID userAnonymizedId, Pageable pageable, Set<IntervalInactivityDto> missingInactivities) { UserAnonymizedDto userAnonymized = userAnonymizedService.getUserAnonymized(userAnonymizedId); Interval interval = getInterval(getCurrentWeekDate(userAnonymized), pageable, ChronoUnit.WEEKS); List<WeekActivityOverviewDto> weekActivityOverviews = getWeekActivityOverviews(userAnonymizedId, missingInactivities, userAnonymized, interval); return new PageImpl<>(weekActivityOverviews, pageable, getTotalPageableItems(userAnonymized, ChronoUnit.WEEKS)); }