Files
vst-ui-base/src/jvmMain/kotlin/nl/astraeus/vst/base/db/SampleEntityQueryProvider.kt
rnentjes 4d7c46093c Update package declarations for SampleEntity files
Standardized package paths in `SampleEntity`, `SampleEntityQueryProvider`, and `SampleDao` from `nl.astraeus.vst.chip.db` to `nl.astraeus.vst.base.db`.
2025-06-10 19:35:10 +02:00

46 lines
1.0 KiB
Kotlin

package nl.astraeus.vst.base.db
import java.sql.ResultSet
val SAMPLE_CREATE_QUERY = """
CREATE TABLE SAMPLES (
SHA1HASH TEXT,
FILENAME TEXT,
LENGTH NUMBER,
CREATED TIMESTAMP
)
""".trimIndent()
object SampleEntityQueryProvider : QueryProvider<SampleEntity>() {
override val tableName: String
get() = "SAMPLES"
override val resultSetMapper: (ResultSet) -> SampleEntity
get() = { rs ->
SampleEntity(
rs.getString(1),
rs.getString(2),
rs.getInt(3),
rs.getTimestamp(4).toDateTimeInstant()
)
}
override val insert: SqlStatement<SampleEntity>
get() = SqlStatement(
"""
INSERT INTO $tableName (
SHA1HASH,
LENGTH,
CREATED
) VALUES (
?,?,?,?
)
""".trimIndent()
) { ps ->
ps.setString(1, sha1Hash)
ps.setString(2, filename)
ps.setInt(3, length)
ps.setTimestamp(4, updated.toSqlTimestamp())
}
override val update: SqlStatement<SampleEntity>
get() = TODO("Not yet implemented")
}