Small improvements
- Improve formatting - Fix some typos - Mini code improvements
This commit is contained in:
parent
1f1374f112
commit
6f4cb9fd66
@ -48,11 +48,11 @@ class CacheController {
|
|||||||
scheduledUpdates()
|
scheduledUpdates()
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object{
|
companion object {
|
||||||
private val logger: Logger = LoggerFactory.getLogger(CacheController::class.java)
|
private val logger: Logger = LoggerFactory.getLogger(CacheController::class.java)
|
||||||
|
|
||||||
var courseList = CoursesList(CoursesMeta(), sortedMapOf())
|
var courseList = CoursesList(CoursesMeta(), sortedMapOf())
|
||||||
var mensaMenu = MensaMenu(MensaMeta(0,""), MensaWeek(), MensaWeek())
|
var mensaMenu = MensaMenu(MensaMeta(0, ""), MensaWeek(), MensaWeek())
|
||||||
var timetableList = HashMap<String, TimetableCourseWeek>() // this list contains all timetables
|
var timetableList = HashMap<String, TimetableCourseWeek>() // this list contains all timetables
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -68,7 +68,7 @@ class CacheController {
|
|||||||
val currentTime = System.currentTimeMillis() / 1000
|
val currentTime = System.currentTimeMillis() / 1000
|
||||||
val timetableLink = "https://mosad.xyz"
|
val timetableLink = "https://mosad.xyz"
|
||||||
val weekNumberYear = 0
|
val weekNumberYear = 0
|
||||||
val instr = javaClass.getResourceAsStream("/html/Timetable_normal-week.html")
|
val instr = CacheController::class.java.getResourceAsStream("/html/Timetable_normal-week.html")
|
||||||
|
|
||||||
val timetableParser =
|
val timetableParser =
|
||||||
TimetableParser(htmlDoc = Jsoup.parse(instr, "UTF-8", "https://www.hs-offenburg.de/"))
|
TimetableParser(htmlDoc = Jsoup.parse(instr, "UTF-8", "https://www.hs-offenburg.de/"))
|
||||||
@ -151,7 +151,7 @@ class CacheController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* this function updates the courseList
|
* this function updates the courseList
|
||||||
* during the update process the old data will be returned for a API request
|
* during the update process the old data will be returned for an API request
|
||||||
*/
|
*/
|
||||||
private fun asyncUpdateCourseList() = GlobalScope.launch {
|
private fun asyncUpdateCourseList() = GlobalScope.launch {
|
||||||
CourseListParser().getCourseLinks(StartupController.courseListURL)?.let {
|
CourseListParser().getCourseLinks(StartupController.courseListURL)?.let {
|
||||||
@ -167,7 +167,7 @@ class CacheController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* this function updates the mensa menu list
|
* this function updates the mensa menu list
|
||||||
* during the update process the old data will be returned for a API request
|
* during the update process the old data will be returned for an API request
|
||||||
*/
|
*/
|
||||||
private fun asyncUpdateMensa() = GlobalScope.launch {
|
private fun asyncUpdateMensa() = GlobalScope.launch {
|
||||||
val mensaCurrentWeek = MensaParser().getMensaMenu(StartupController.mensaMenuURL)
|
val mensaCurrentWeek = MensaParser().getMensaMenu(StartupController.mensaMenuURL)
|
||||||
@ -183,7 +183,7 @@ class CacheController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* this function updates all existing timetables
|
* this function updates all existing timetables
|
||||||
* during the update process the old data will be returned for a API request
|
* during the update process the old data will be returned for an API request
|
||||||
* a FixedThreadPool is used to make parallel requests for faster updates
|
* a FixedThreadPool is used to make parallel requests for faster updates
|
||||||
*/
|
*/
|
||||||
private fun asyncUpdateTimetables() = GlobalScope.launch {
|
private fun asyncUpdateTimetables() = GlobalScope.launch {
|
||||||
|
@ -135,7 +135,8 @@ class StartupController {
|
|||||||
try {
|
try {
|
||||||
val timetableObject = JsonParser.parseString(bufferedReader.readLine()).asJsonObject
|
val timetableObject = JsonParser.parseString(bufferedReader.readLine()).asJsonObject
|
||||||
val timetable = Gson().fromJson(timetableObject, TimetableCourseWeek().javaClass)
|
val timetable = Gson().fromJson(timetableObject, TimetableCourseWeek().javaClass)
|
||||||
CacheController.timetableList.put("${timetable.meta.courseName}-${timetable.meta.weekIndex}", timetable)
|
CacheController.timetableList["${timetable.meta.courseName}-${timetable.meta.weekIndex}"] =
|
||||||
|
timetable
|
||||||
} catch (ex: Exception) {
|
} catch (ex: Exception) {
|
||||||
logger.error("error while reading cache", ex)
|
logger.error("error while reading cache", ex)
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -62,7 +62,7 @@ class StatusController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun updateTimetableRequests(courseName: String) {
|
fun updateTimetableRequests(courseName: String) {
|
||||||
timetableRequests[courseName] = timetableRequests.getOrPut(courseName) {0} + 1
|
timetableRequests[courseName] = (timetableRequests[courseName] ?: 0) + 1
|
||||||
totalRequests++
|
totalRequests++
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ class TimetableParser(timetableURL: String? = null, htmlDoc: Document? = null) {
|
|||||||
var lessonIndexDay = 0 // the index of the lesson per timeslot
|
var lessonIndexDay = 0 // the index of the lesson per timeslot
|
||||||
|
|
||||||
// elements are now all lessons, including empty ones
|
// elements are now all lessons, including empty ones
|
||||||
row.select("td.lastcol, td[style]").forEach {element ->
|
row.select("td.lastcol, td[style]").forEach { element ->
|
||||||
|
|
||||||
// if there is a lecture with rowspan="2", we need to shift everything by one to the left. This is stupid and ugly there needs to bee an API
|
// if there is a lecture with rowspan="2", we need to shift everything by one to the left. This is stupid and ugly there needs to bee an API
|
||||||
if ((sDay > -1 && sRow > -1) && (sDay == day && ((sRow + 1) == rowIndex))) {
|
if ((sDay > -1 && sRow > -1) && (sDay == day && ((sRow + 1) == rowIndex))) {
|
||||||
@ -115,8 +115,7 @@ class TimetableParser(timetableURL: String? = null, htmlDoc: Document? = null) {
|
|||||||
|
|
||||||
lessonIndexDay++
|
lessonIndexDay++
|
||||||
|
|
||||||
if (element.hasClass("lastcol"))
|
if (element.hasClass("lastcol")) {
|
||||||
{
|
|
||||||
day++
|
day++
|
||||||
lessonIndexDay = 0
|
lessonIndexDay = 0
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user