mirror of
https://github.com/smyalygames/checklist-tester.git
synced 2025-05-18 14:34: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