FIRST AUTHENTICATED ROUTES!

This commit is contained in:
2025-08-16 17:05:23 -04:00
parent a05e48aec1
commit 3b5ba33151

View File

@@ -7,6 +7,7 @@ import codes.kalar.exception.DbElementNotFoundException
import codes.kalar.model.NewCollectionItem import codes.kalar.model.NewCollectionItem
import io.ktor.http.* import io.ktor.http.*
import io.ktor.server.application.* import io.ktor.server.application.*
import io.ktor.server.auth.authenticate
import io.ktor.server.request.* import io.ktor.server.request.*
import io.ktor.server.response.* import io.ktor.server.response.*
import io.ktor.server.routing.* import io.ktor.server.routing.*
@@ -41,11 +42,12 @@ fun Application.configureCollectionItemRoutes(dbConnection: Connection) {
} }
} }
authenticate("auth-jwt") {
post("/items") { post("/items") {
try { try {
val item = call.receive<NewCollectionItem>() val item = call.receive<NewCollectionItem>()
val id = itemService.create(item) val id = itemService.create(item)
call.respondText("Adding ${item.title} to database with the id of $id", status=HttpStatusCode.OK) call.respondText("Adding ${item.title} to database with the id of $id", status = HttpStatusCode.OK)
} catch (cause: DbElementInsertionException) { } catch (cause: DbElementInsertionException) {
call.respond(HttpStatusCode.BadRequest, cause.message ?: "Bad Arguments") call.respond(HttpStatusCode.BadRequest, cause.message ?: "Bad Arguments")
} catch (cause: ContentTransformationException) { } catch (cause: ContentTransformationException) {
@@ -59,7 +61,7 @@ fun Application.configureCollectionItemRoutes(dbConnection: Connection) {
val inputItem = call.receive<CollectionItem>() val inputItem = call.receive<CollectionItem>()
itemService.readById(inputItem.id) itemService.readById(inputItem.id)
itemService.update(inputItem) itemService.update(inputItem)
call.respondText("Updated ${inputItem.title} to database.", status=HttpStatusCode.OK) call.respondText("Updated ${inputItem.title} to database.", status = HttpStatusCode.OK)
} catch (cause: DbElementNotFoundException) { } catch (cause: DbElementNotFoundException) {
log.error(cause.message) log.error(cause.message)
call.respond(HttpStatusCode.NotFound, cause.message ?: "Could not find item in database.") call.respond(HttpStatusCode.NotFound, cause.message ?: "Could not find item in database.")
@@ -87,4 +89,5 @@ fun Application.configureCollectionItemRoutes(dbConnection: Connection) {
} }
} }
} }
}
} }