mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-07-11 23:04:33 -05:00
commit what we got
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
package ir.armor.tachidesk.database
|
||||
|
||||
import ir.armor.tachidesk.Config
|
||||
import ir.armor.tachidesk.database.model.ExtensionsTable
|
||||
import ir.armor.tachidesk.database.model.SourcesTable
|
||||
import org.jetbrains.exposed.sql.Database
|
||||
import org.jetbrains.exposed.sql.SchemaUtils
|
||||
import org.jetbrains.exposed.sql.transactions.transaction
|
||||
|
||||
object DBMangaer {
|
||||
val db by lazy {
|
||||
Database.connect("jdbc:sqlite:${Config.dataRoot}/database.db", "org.sqlite.JDBC")
|
||||
}
|
||||
}
|
||||
|
||||
fun makeDataBaseTables() {
|
||||
// mention db object to connect
|
||||
DBMangaer.db
|
||||
|
||||
transaction {
|
||||
SchemaUtils.create(ExtensionsTable)
|
||||
SchemaUtils.create(SourcesTable)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package ir.armor.tachidesk.database.model
|
||||
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import org.jetbrains.exposed.dao.IntEntity
|
||||
import org.jetbrains.exposed.dao.IntEntityClass
|
||||
import org.jetbrains.exposed.dao.id.EntityID
|
||||
import org.jetbrains.exposed.dao.id.IntIdTable
|
||||
import org.jetbrains.exposed.sql.Column
|
||||
import org.jetbrains.exposed.sql.Table
|
||||
|
||||
|
||||
object ExtensionsTable : IntIdTable() {
|
||||
val name = varchar("name", 128)
|
||||
val pkgName = varchar("pkg_name", 128)
|
||||
val versionName = varchar("version_name", 16)
|
||||
val versionCode = integer("version_code")
|
||||
val lang = varchar("lang", 5)
|
||||
val isNsfw = bool("is_nsfw")
|
||||
}
|
||||
|
||||
//class Extension(id: EntityID<Int>) : IntEntity(id) {
|
||||
// companion object : IntEntityClass<Extension>(ExtensionsTable)
|
||||
//
|
||||
// val name by ExtensionsTable.name
|
||||
// val pkgName by ExtensionsTable.pkgName
|
||||
// val versionName by ExtensionsTable.versionName
|
||||
// val versionCode by ExtensionsTable.versionCode
|
||||
// val lang by ExtensionsTable.lang
|
||||
// val isNsfw by ExtensionsTable.isNsfw
|
||||
//}
|
||||
@@ -0,0 +1,26 @@
|
||||
package ir.armor.tachidesk.database.model
|
||||
|
||||
import org.jetbrains.exposed.dao.Entity
|
||||
import org.jetbrains.exposed.dao.IntEntity
|
||||
import org.jetbrains.exposed.dao.IntEntityClass
|
||||
import org.jetbrains.exposed.dao.id.EntityID
|
||||
import org.jetbrains.exposed.sql.Column
|
||||
import org.jetbrains.exposed.sql.Table
|
||||
|
||||
object SourcesTable : Table() {
|
||||
val id: Column<Long> = long("id")
|
||||
val name: Column<String> = varchar("name", 128)
|
||||
val extension = reference("extension", ExtensionsTable)
|
||||
override val primaryKey = PrimaryKey(id)
|
||||
}
|
||||
|
||||
//class Source : Entity() {
|
||||
// companion object : Entity<Source>(SourcesTable)
|
||||
//
|
||||
// val name by ExtensionsTable.name
|
||||
// val pkgName by ExtensionsTable.pkgName
|
||||
// val versionName by ExtensionsTable.versionName
|
||||
// val versionCode by ExtensionsTable.versionCode
|
||||
// val lang by ExtensionsTable.lang
|
||||
// val isNsfw by ExtensionsTable.isNsfw
|
||||
//}
|
||||
Reference in New Issue
Block a user