diff --git a/src/main/java/org/olat/course/nodes/livestream/manager/LIveStreamServiceImpl.java b/src/main/java/org/olat/course/nodes/livestream/manager/LIveStreamServiceImpl.java index e209cc1bb3f39a9d9ef98769053c328ae60e1a90..ff9ec5380504bc9e1a6068f010a1a415be349a0a 100644 --- a/src/main/java/org/olat/course/nodes/livestream/manager/LIveStreamServiceImpl.java +++ b/src/main/java/org/olat/course/nodes/livestream/manager/LIveStreamServiceImpl.java @@ -19,9 +19,6 @@ */ package org.olat.course.nodes.livestream.manager; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; @@ -55,29 +52,15 @@ public class LIveStreamServiceImpl implements LiveStreamService { public List<? extends LiveStreamEvent> getRunningEvents(CourseCalendars calendars, int bufferBeforeMin, int bufferAfterMin) { Date now = new Date(); - - Calendar cFromStartOfDay = Calendar.getInstance(); - cFromStartOfDay.setTime(now); - int year = cFromStartOfDay.get(Calendar.YEAR); - int month = cFromStartOfDay.get(Calendar.MONTH); - int day = cFromStartOfDay.get(Calendar.DATE); - cFromStartOfDay.set(year, month, day - 1, 0, 0, 0); - Date fromStartOfDay = cFromStartOfDay.getTime(); - Calendar cFrom = Calendar.getInstance(); cFrom.setTime(now); cFrom.add(Calendar.MINUTE, -bufferAfterMin); Date from = cFrom.getTime(); - Calendar cTo = Calendar.getInstance(); cTo.setTime(now); cTo.add(Calendar.MINUTE, bufferBeforeMin); Date to = cTo.getTime(); - - // Use start of day to get all day events as well. - return getLiveStreamEvents(calendars, fromStartOfDay, to).stream() - .filter(startedFilter(from)) - .collect(Collectors.toList()); + return getLiveStreamEvents(calendars, from, to); } @Override @@ -96,12 +79,6 @@ public class LIveStreamServiceImpl implements LiveStreamService { .filter(notStartedFilter(from)) .collect(Collectors.toList()); } - - private Predicate<LiveStreamEvent> startedFilter(Date from) { - return (LiveStreamEvent e) -> { - return e.getBegin().before(from); - }; - } private Predicate<LiveStreamEvent> notStartedFilter(Date from) { return (LiveStreamEvent e) -> { @@ -128,7 +105,6 @@ public class LIveStreamServiceImpl implements LiveStreamService { } } } - return liveStreamEvents; } @@ -139,12 +115,9 @@ public class LIveStreamServiceImpl implements LiveStreamService { private LiveStreamEventImpl toLiveStreamEvent(KalendarEvent event, boolean timeOnly) { LiveStreamEventImpl liveStreamEvent = new LiveStreamEventImpl(); liveStreamEvent.setId(event.getID()); - liveStreamEvent.setAllDayEvent(event.isAllDayEvent()); liveStreamEvent.setBegin(event.getBegin()); - Date end = event.isAllDayEvent() - ? getEndOfDay(event.getEnd()) - : event.getEnd(); - liveStreamEvent.setEnd(end); + liveStreamEvent.setEnd(event.getEnd()); + liveStreamEvent.setAllDayEvent(event.isAllDayEvent()); liveStreamEvent.setLiveStreamUrl(event.getLiveStreamUrl()); if (!timeOnly) { liveStreamEvent.setSubject(event.getSubject()); @@ -154,18 +127,4 @@ public class LIveStreamServiceImpl implements LiveStreamService { return liveStreamEvent; } - private Date getEndOfDay(Date date) { - LocalDateTime localDateTime = dateToLocalDateTime(date); - LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX); - return localDateTimeToDate(endOfDay); - } - - private LocalDateTime dateToLocalDateTime(Date date) { - return LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault()); - } - - private Date localDateTimeToDate(LocalDateTime localDateTime) { - return Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant()); - } - }