This commit is contained in:
71
src/api/route/InputServiceServer.kt
Normal file
71
src/api/route/InputServiceServer.kt
Normal file
@@ -0,0 +1,71 @@
|
||||
package com.kmalbz.api.route
|
||||
|
||||
import com.kmalbz.database.service.IInputObjectService
|
||||
import io.ktor.application.call
|
||||
import io.ktor.http.HttpStatusCode
|
||||
import io.ktor.response.respond
|
||||
import io.ktor.routing.Routing
|
||||
import io.ktor.routing.get
|
||||
import org.koin.ktor.ext.inject
|
||||
import java.time.LocalDate
|
||||
import java.time.format.DateTimeFormatter
|
||||
|
||||
/**
|
||||
* Output Service - RDB
|
||||
*
|
||||
* This is the output interface of the Birbnetes system.
|
||||
*/
|
||||
class InputServiceServer {
|
||||
/**
|
||||
* output
|
||||
*/
|
||||
fun Routing.registerOutput() {
|
||||
val resultObjectService by inject<IInputObjectService>()
|
||||
get("/output"){
|
||||
call.respond(resultObjectService.getAllResultObjects())
|
||||
}
|
||||
|
||||
get("/output/filter/negative") {
|
||||
val resultList = resultObjectService.getResultObjecLessthanProbability(0.5) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultList)
|
||||
}
|
||||
|
||||
get("/output/filter/positive") {
|
||||
val resultList = resultObjectService.getResultObjecGreaterthanProbability(0.5) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultList)
|
||||
}
|
||||
|
||||
get("/output/filter/undecided") {
|
||||
val resultList = resultObjectService.getResultObjecEqualsProbability(0.5) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultList)
|
||||
}
|
||||
|
||||
get("/output/after/{dateAfter}") {
|
||||
val dateAfter = call.parameters["dateAfter"] ?: error(HttpStatusCode.NotAcceptable)
|
||||
val dateTimeFormatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE
|
||||
val localDateAfter : LocalDate = LocalDate.parse(dateAfter,dateTimeFormatter)
|
||||
val resultList = resultObjectService.getResultObjectafterDate(localDateAfter) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultList)
|
||||
}
|
||||
|
||||
get("/output/before/{dateBefore}") {
|
||||
val dateAfter = call.parameters["dateBefore"] ?: error(HttpStatusCode.NotAcceptable)
|
||||
val dateTimeFormatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE
|
||||
val localDateBefore : LocalDate = LocalDate.parse(dateAfter,dateTimeFormatter)
|
||||
val resultList = resultObjectService.getResultObjectbeforeDate(localDateBefore) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultList)
|
||||
}
|
||||
|
||||
get("/output/{tagID}") {
|
||||
val tagID = call.parameters["tagID"] ?: error(HttpStatusCode.NotAcceptable)
|
||||
val resultObject = resultObjectService.getResultObjectbyTag(tagID) ?: call.respond(HttpStatusCode.NotFound)
|
||||
|
||||
call.respond(resultObject)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user