mirror of
https://github.com/smyalygames/checklist-tester.git
synced 2025-05-18 06:24:12 +02:00
feat(connector): create basic queries for ProjectDatabase
This commit is contained in:
parent
fbfa1f7399
commit
bf31232d92
@ -0,0 +1,42 @@
|
||||
package io.anthonyberg.connector.shared.database
|
||||
|
||||
import io.anthonyberg.connector.shared.entity.Project
|
||||
|
||||
internal class ProjectDatabase (driverFactory: DriverFactory) {
|
||||
private val database = Database(driverFactory.createDriver())
|
||||
private val dbQuery = database.projectQueries
|
||||
|
||||
/**
|
||||
* Gets all the Projects in the database
|
||||
*/
|
||||
internal fun getAllProjects(): List<Project> {
|
||||
return dbQuery.selectAllProjects(::mapProjectSelecting).executeAsList()
|
||||
}
|
||||
|
||||
private fun mapProjectSelecting(
|
||||
id: Long,
|
||||
name: String,
|
||||
aircraftType: String,
|
||||
createdUTC: String,
|
||||
modifiedUTC: String?
|
||||
): Project {
|
||||
return Project(
|
||||
id = id.toInt(),
|
||||
name = name,
|
||||
aircraftType = aircraftType,
|
||||
createdUTC = createdUTC,
|
||||
modifiedUTC = modifiedUTC,
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* Inserts a project into the database
|
||||
*/
|
||||
internal fun createProject(project: Project) {
|
||||
dbQuery.createProject(
|
||||
name = project.name,
|
||||
aircraftType = project.aircraftType,
|
||||
createdUTC = project.createdUTC,
|
||||
)
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user