From 617b629d79629b448d7a5ae011a47774ac04d353 Mon Sep 17 00:00:00 2001 From: Kevin Galligan Date: Sat, 26 Mar 2022 18:51:28 -0400 Subject: [PATCH] Added a file helper --- .../kotlin/co/touchlab/sqliter/internal/File.kt | 3 +++ .../kotlin/co/touchlab/sqliter/internal/File.kt | 3 +++ .../kotlin/co/touchlab/sqliter/internal/File.kt | 3 +++ .../co/touchlab/sqliter/DatabaseFileContext.kt | 16 +++++++++------- .../kotlin/co/touchlab/sqliter/internal/File.kt | 1 + 5 files changed, 19 insertions(+), 7 deletions(-) diff --git a/sqliter-driver/src/appleMain/kotlin/co/touchlab/sqliter/internal/File.kt b/sqliter-driver/src/appleMain/kotlin/co/touchlab/sqliter/internal/File.kt index 86524bb8..02ac6844 100644 --- a/sqliter-driver/src/appleMain/kotlin/co/touchlab/sqliter/internal/File.kt +++ b/sqliter-driver/src/appleMain/kotlin/co/touchlab/sqliter/internal/File.kt @@ -23,6 +23,9 @@ internal actual class File(dirPath:String?=null, name:String){ actual val path:String + actual val exists: Boolean + get() = exists() + init { if (dirPath == null || dirPath.isEmpty()) { this.path = fixSlashes(name) diff --git a/sqliter-driver/src/linuxX64Main/kotlin/co/touchlab/sqliter/internal/File.kt b/sqliter-driver/src/linuxX64Main/kotlin/co/touchlab/sqliter/internal/File.kt index 999a9c9d..f90f1824 100644 --- a/sqliter-driver/src/linuxX64Main/kotlin/co/touchlab/sqliter/internal/File.kt +++ b/sqliter-driver/src/linuxX64Main/kotlin/co/touchlab/sqliter/internal/File.kt @@ -23,6 +23,9 @@ internal actual class File(dirPath: String? = null, name: String) { actual val path: String + actual val exists: Boolean + get() = exists() + init { if (dirPath == null || dirPath.isEmpty()) { this.path = fixSlashes(name) diff --git a/sqliter-driver/src/mingwMain/kotlin/co/touchlab/sqliter/internal/File.kt b/sqliter-driver/src/mingwMain/kotlin/co/touchlab/sqliter/internal/File.kt index ea359426..ddf01259 100644 --- a/sqliter-driver/src/mingwMain/kotlin/co/touchlab/sqliter/internal/File.kt +++ b/sqliter-driver/src/mingwMain/kotlin/co/touchlab/sqliter/internal/File.kt @@ -24,6 +24,9 @@ internal actual class File(dirPath:String? = null, name:String) { actual val path: String + actual val exists: Boolean + get() = exists() + init { if (dirPath == null || dirPath.isEmpty()) { this.path = fixSlashes(name) diff --git a/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/DatabaseFileContext.kt b/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/DatabaseFileContext.kt index 592a71ad..d0a9814b 100644 --- a/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/DatabaseFileContext.kt +++ b/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/DatabaseFileContext.kt @@ -18,14 +18,16 @@ package co.touchlab.sqliter import co.touchlab.sqliter.internal.File -expect object DatabaseFileContext{ - fun deleteDatabase(name: String, basePath:String? = null) - fun databasePath(databaseName:String, datapathPath:String?):String - internal fun databaseFile(databaseName:String, datapathPath:String?): File +expect object DatabaseFileContext { + fun deleteDatabase(name: String, basePath: String? = null) + fun databasePath(databaseName: String, datapathPath: String?): String + internal fun databaseFile(databaseName: String, datapathPath: String?): File } -fun DatabaseFileContext.deleteDatabase(configuration: DatabaseConfiguration){ - if(configuration.name != null) +fun DatabaseFileContext.deleteDatabase(configuration: DatabaseConfiguration) { + if (configuration.name != null) deleteDatabase(configuration.name, configuration.extendedConfig.basePath) -} \ No newline at end of file +} + +fun DatabaseFileContext.databaseFileExists(name: String, basePath: String? = null): Boolean = databaseFile(name, basePath).exists \ No newline at end of file diff --git a/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/internal/File.kt b/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/internal/File.kt index 3381c940..f5402599 100644 --- a/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/internal/File.kt +++ b/sqliter-driver/src/nativeCommonMain/kotlin/co/touchlab/sqliter/internal/File.kt @@ -2,4 +2,5 @@ package co.touchlab.sqliter.internal internal expect class File { val path: String + val exists: Boolean } \ No newline at end of file