From b1afde67553e3e3ca30a921920a1889ff45ee568 Mon Sep 17 00:00:00 2001 From: Christian Schweizer Date: Tue, 30 Apr 2024 10:15:08 +0200 Subject: [PATCH] Use OpenOlat endpoint to fetch exams --- .../lms/impl/olat/OlatLmsAPITemplate.java | 12 ++++++------ .../servicelayer/lms/impl/olat/OlatLmsData.java | 16 +++++++++------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsAPITemplate.java b/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsAPITemplate.java index 2307653d..1f0120fb 100644 --- a/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsAPITemplate.java +++ b/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsAPITemplate.java @@ -275,7 +275,7 @@ public class OlatLmsAPITemplate extends AbstractCachedCourseAccess implements Lm final DateTime quizFromTime = (filterMap != null) ? filterMap.getQuizFromTime() : null; final long fromCutTime = (quizFromTime != null) ? Utils.toUnixTimeInSeconds(quizFromTime) : -1; - String url = "/restapi/assessment_modes/seb?"; + String url = "/restapi/repo/assessmentmodes?"; if (fromCutTime != -1) { url = String.format("%sdateFrom=%s&", url, fromCutTime); } @@ -295,8 +295,8 @@ public class OlatLmsAPITemplate extends AbstractCachedCourseAccess implements Lm lmsSetup.getLmsType(), a.name, a.description, - Utils.toDateTimeUTC(a.dateFrom), - Utils.toDateTimeUTC(a.dateTo), + Utils.toDateTimeUTC(a.begin - a.leadTime * 1000 * 60), + Utils.toDateTimeUTC(a.end + a.followupTime * 1000 * 60), examUrl(a.repositoryEntryKey), new HashMap()); }) @@ -316,7 +316,7 @@ public class OlatLmsAPITemplate extends AbstractCachedCourseAccess implements Lm private QuizData quizById(final OlatLmsRestTemplate restTemplate, final String id) { final LmsSetup lmsSetup = this.apiTemplateDataSupplier.getLmsSetup(); - final String url = String.format("/restapi/assessment_modes/%s", id); + final String url = String.format("/restapi/repo/assessmentmodes/%s", id); final AssessmentData a = this.apiGet(restTemplate, url, AssessmentData.class); return new QuizData( String.format("%d", a.key), @@ -325,8 +325,8 @@ public class OlatLmsAPITemplate extends AbstractCachedCourseAccess implements Lm lmsSetup.getLmsType(), a.name, a.description, - Utils.toDateTimeUTC(a.dateFrom), - Utils.toDateTimeUTC(a.dateTo), + Utils.toDateTimeUTC(a.begin - a.leadTime * 1000 * 60), + Utils.toDateTimeUTC(a.end + a.followupTime * 1000 * 60), examUrl(a.repositoryEntryKey), new HashMap()); } diff --git a/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsData.java b/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsData.java index 7a7eeb2d..879a12be 100644 --- a/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsData.java +++ b/src/main/java/ch/ethz/seb/sebserver/webservice/servicelayer/lms/impl/olat/OlatLmsData.java @@ -20,22 +20,24 @@ public final class OlatLmsData { /* * OLAT API example: * { - * "courseName": "course 1", - * "dateFrom": 1624420800000, - * "dateTo": 1624658400000, + * "begin": 1624420800000, + * "end": 1624658400000, * "description": "", * "key": 6356992, * “repositoryEntryKey”: 462324, - * "name": "SEB test" + * "name": "SEB test", + * "leadTime": 15, + * "followupTime", 5 * } */ public long key; public long repositoryEntryKey; public String name; public String description; - public String courseName; - public long dateFrom; - public long dateTo; + public Long begin; + public Long end; + public long leadTime; + public long followupTime; } @JsonIgnoreProperties(ignoreUnknown = true)