count courseList requests seperat
This commit is contained in:
parent
be95af43c2
commit
2f1f65eba0
|
@ -30,9 +30,9 @@ import org.mosad.thecitadelofricks.controller.CacheController.Companion.getTimet
|
|||
import org.mosad.thecitadelofricks.controller.CacheController.Companion.mensaMenu
|
||||
import org.mosad.thecitadelofricks.controller.StartupController
|
||||
import org.mosad.thecitadelofricks.controller.StatusController.Companion.getStatus
|
||||
import org.mosad.thecitadelofricks.controller.StatusController.Companion.updateCourseListRequests
|
||||
import org.mosad.thecitadelofricks.controller.StatusController.Companion.updateMensaMenuRequests
|
||||
import org.mosad.thecitadelofricks.controller.StatusController.Companion.updateTimetableRequests
|
||||
import org.mosad.thecitadelofricks.controller.StatusController.Companion.updateTotalRequests
|
||||
import org.slf4j.Logger
|
||||
import org.slf4j.LoggerFactory
|
||||
import org.springframework.web.bind.annotation.RequestMapping
|
||||
|
@ -67,14 +67,13 @@ class APIController {
|
|||
@RequestMapping("/courseList")
|
||||
fun courseList(): CoursesList {
|
||||
logger.info("courseList request at ${LocalDateTime.now()}!")
|
||||
updateTotalRequests()
|
||||
updateCourseListRequests()
|
||||
return courseList
|
||||
}
|
||||
|
||||
@RequestMapping("/mensamenu")
|
||||
fun mensamenu(): MensaMenu {
|
||||
logger.info("mensamenu request at ${LocalDateTime.now()}!")
|
||||
updateTotalRequests()
|
||||
updateMensaMenuRequests()
|
||||
return mensaMenu
|
||||
}
|
||||
|
@ -85,7 +84,6 @@ class APIController {
|
|||
@RequestParam(value = "week", defaultValue = "0") week: Int
|
||||
): TimetableCourseWeek {
|
||||
logger.info("timetable request at ${LocalDateTime.now()}!")
|
||||
updateTotalRequests()
|
||||
updateTimetableRequests(courseName)
|
||||
return getTimetable(courseName, week)
|
||||
}
|
||||
|
@ -96,7 +94,7 @@ class APIController {
|
|||
@RequestParam(value = "week", defaultValue = "0") week: Int
|
||||
): HashSet<String> {
|
||||
logger.info("lessonSubjectList request at ${LocalDateTime.now()}!")
|
||||
updateTotalRequests()
|
||||
updateTimetableRequests(courseName)
|
||||
return getLessonSubjectList(courseName, week)
|
||||
}
|
||||
|
||||
|
@ -107,7 +105,7 @@ class APIController {
|
|||
@RequestParam(value = "week", defaultValue = "0") week: Int
|
||||
): ArrayList<Lesson> {
|
||||
logger.info("lesson request at ${LocalDateTime.now()}!")
|
||||
updateTotalRequests()
|
||||
updateTimetableRequests(courseName)
|
||||
return getLesson(courseName, lessonSubject, week)
|
||||
}
|
||||
|
||||
|
|
|
@ -69,8 +69,9 @@ data class Status(
|
|||
val uptime: String,
|
||||
val apiVersion: String,
|
||||
val softwareVersion: String,
|
||||
val requestCount: Int,
|
||||
val totalRequests: Int,
|
||||
val mensaMenuRequests: Int,
|
||||
val courseListRequests: Int,
|
||||
val timetableRequests: ArrayList<TimetableCounter>,
|
||||
val timetableListSize: Int,
|
||||
val coursesLastUpdate: Date,
|
||||
|
|
|
@ -42,27 +42,34 @@ class StatusController {
|
|||
|
||||
private var totalRequests = 0
|
||||
private var mensaMenuRequests = 0
|
||||
private var courseListRequests = 0
|
||||
private var timetableRequests = ArrayList<TimetableCounter>()
|
||||
|
||||
fun updateTotalRequests() {
|
||||
/**
|
||||
* if a mensamenu/courseList/timetable is requested update the specific and total request count
|
||||
*/
|
||||
fun updateMensaMenuRequests() {
|
||||
mensaMenuRequests++
|
||||
totalRequests++
|
||||
}
|
||||
|
||||
fun updateMensaMenuRequests() {
|
||||
mensaMenuRequests++
|
||||
fun updateCourseListRequests() {
|
||||
courseListRequests++
|
||||
totalRequests++
|
||||
}
|
||||
|
||||
/**
|
||||
* if a timetable is requested update the request counter
|
||||
*/
|
||||
fun updateTimetableRequests(courseName: String) {
|
||||
timetableRequests.stream().filter { it.courseName == courseName }.findFirst().ifPresentOrElse({
|
||||
it.requests++
|
||||
}, {
|
||||
timetableRequests.add(TimetableCounter(courseName, 1))
|
||||
})
|
||||
totalRequests++
|
||||
}
|
||||
|
||||
/**
|
||||
* getters and setters
|
||||
*/
|
||||
fun getTotalRequests(): Int {
|
||||
return totalRequests
|
||||
}
|
||||
|
@ -71,6 +78,10 @@ class StatusController {
|
|||
return mensaMenuRequests
|
||||
}
|
||||
|
||||
fun getCourseListRequests(): Int {
|
||||
return courseListRequests
|
||||
}
|
||||
|
||||
fun getTimetableRequests(): ArrayList<TimetableCounter> {
|
||||
return timetableRequests
|
||||
}
|
||||
|
@ -108,6 +119,7 @@ class StatusController {
|
|||
softwareVersion,
|
||||
getTotalRequests(),
|
||||
getMensaMenuRequests(),
|
||||
getCourseListRequests(),
|
||||
getTimetableRequests(),
|
||||
CacheController.timetableList.size,
|
||||
Date(CacheController.courseList.meta.updateTime * 1000),
|
||||
|
|
Loading…
Reference in New Issue