2 Commits
1.2.5 ... 1.2.6

Author SHA1 Message Date
9de1e295dd fix reading file from resources
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-08-06 17:27:49 +02:00
6287d4582d update spring-boot
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
* add TEST_A and TEST_B courses for testing during summer break
2020-08-06 16:31:05 +02:00
4 changed files with 1749 additions and 6 deletions

View File

@ -1,12 +1,12 @@
plugins { plugins {
id 'org.jetbrains.kotlin.jvm' version '1.3.72' id 'org.jetbrains.kotlin.jvm' version '1.3.72'
id 'org.jetbrains.kotlin.plugin.spring' version '1.3.72' id 'org.jetbrains.kotlin.plugin.spring' version '1.3.72'
id 'org.springframework.boot' version '2.3.0.RELEASE' id 'org.springframework.boot' version '2.3.2.RELEASE'
id 'io.spring.dependency-management' version '1.0.9.RELEASE' id 'io.spring.dependency-management' version '1.0.9.RELEASE'
} }
group 'org.mosad' group 'org.mosad'
version '1.2.5' version '1.2.6'
repositories { repositories {
jcenter() jcenter()

View File

@ -49,7 +49,7 @@ class APIController {
companion object { companion object {
const val apiVersion = "1.2.0" const val apiVersion = "1.2.0"
const val softwareVersion = "1.2.5" const val softwareVersion = "1.2.6"
val startTime = System.currentTimeMillis() / 1000 val startTime = System.currentTimeMillis() / 1000
} }

View File

@ -24,15 +24,14 @@ package org.mosad.thecitadelofricks.controller
import com.google.gson.Gson import com.google.gson.Gson
import kotlinx.coroutines.* import kotlinx.coroutines.*
import org.jsoup.Jsoup
import org.mosad.thecitadelofricks.* import org.mosad.thecitadelofricks.*
import org.mosad.thecitadelofricks.hsoparser.CourseListParser import org.mosad.thecitadelofricks.hsoparser.CourseListParser
import org.mosad.thecitadelofricks.hsoparser.MensaParser import org.mosad.thecitadelofricks.hsoparser.MensaParser
import org.mosad.thecitadelofricks.hsoparser.TimetableParser import org.mosad.thecitadelofricks.hsoparser.TimetableParser
import org.slf4j.Logger import org.slf4j.Logger
import org.slf4j.LoggerFactory import org.slf4j.LoggerFactory
import java.io.BufferedWriter import java.io.*
import java.io.File
import java.io.FileWriter
import java.util.* import java.util.*
import java.util.concurrent.Executors import java.util.concurrent.Executors
import kotlin.collections.ArrayList import kotlin.collections.ArrayList
@ -61,6 +60,20 @@ class CacheController {
* @return timetable of the course (Type: [TimetableCourseWeek]) * @return timetable of the course (Type: [TimetableCourseWeek])
*/ */
fun getTimetable(courseName: String, weekIndex: Int): TimetableCourseWeek = runBlocking { fun getTimetable(courseName: String, weekIndex: Int): TimetableCourseWeek = runBlocking {
// TODO just for testing
if (courseName == "TEST_A" || courseName == "TEST_B") {
val currentTime = System.currentTimeMillis() / 1000
val timetableLink = "https://mosad.xyz"
val weekNumberYear = 0
val instr = javaClass.getResourceAsStream("/html/Timetable_normal-week.html")
val htmlDoc = Jsoup.parse(instr,"UTF-8", "https://www.hs-offenburg.de/")
val timetableTest = TimetableParser().parseTimeTable(htmlDoc)
return@runBlocking TimetableCourseWeek(TimetableCourseMeta(currentTime, courseName, weekIndex, weekNumberYear, timetableLink), timetableTest)
}
return@runBlocking timetableList.getOrPut("$courseName-$weekIndex") { return@runBlocking timetableList.getOrPut("$courseName-$weekIndex") {
val timetableLink = courseList.courses[courseName] val timetableLink = courseList.courses[courseName]
?.courseLink ?.courseLink
@ -127,6 +140,10 @@ class CacheController {
courseList = CoursesList(CoursesMeta(System.currentTimeMillis() / 1000, it.size), it) courseList = CoursesList(CoursesMeta(System.currentTimeMillis() / 1000, it.size), it)
} }
// TODO just for testing
courseList.courses["TEST_A"] = Course("TEST_A", "https://mosad.xyz")
courseList.courses["TEST_B"] = Course("TEST_B", "https://mosad.xyz")
logger.info("Updated courses successful at ${Date(courseList.meta.updateTime * 1000)}") logger.info("Updated courses successful at ${Date(courseList.meta.updateTime * 1000)}")
} }

File diff suppressed because one or more lines are too long