Skip to content

Commit 965c86e

Browse files
committed
Update SQLiteAdapter.swift
1 parent ca7d6f3 commit 965c86e

1 file changed

Lines changed: 30 additions & 30 deletions

File tree

Sources/SQLiteAdapter/SQLiteAdapter.swift

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -79,20 +79,20 @@ public protocol SQLiteType: Sendable {
7979

8080
final public class SQLite: SQLiteType {
8181

82-
nonisolated(unsafe) public private(set) var dbPointer: OpaquePointer?
83-
nonisolated(unsafe) public private(set) var dbPath: String!
82+
nonisolated(unsafe) public private(set) var pointer: OpaquePointer?
83+
public let path: String
8484

8585
private let SQLITE_STATIC = unsafeBitCast(0, to: sqlite3_destructor_type.self)
8686
private let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
8787

88-
private let queue = DispatchQueue(label: "SQLite Queue")
88+
private let queue = DispatchQueue(label: "com.sqlite.dispatch.queue")
8989

9090
public let dateFormatter = DateFormatter()
9191

9292
public var lastInsertID: Int {
9393
var id = 0
9494
queue.sync {
95-
id = Int(sqlite3_last_insert_rowid(dbPointer))
95+
id = Int(sqlite3_last_insert_rowid(pointer))
9696
}
9797
log("last inserted id: \(id)")
9898
return id
@@ -102,7 +102,7 @@ final public class SQLite: SQLiteType {
102102
public var changes: Int {
103103
var changes = 0
104104
queue.sync {
105-
changes = Int(sqlite3_changes(dbPointer))
105+
changes = Int(sqlite3_changes(pointer))
106106
}
107107
log("changes: \(changes)")
108108
return changes
@@ -112,22 +112,22 @@ final public class SQLite: SQLiteType {
112112
public var totalChanges: Int {
113113
var totalChanges = 0
114114
queue.sync {
115-
totalChanges = Int(sqlite3_total_changes(dbPointer))
115+
totalChanges = Int(sqlite3_total_changes(pointer))
116116
}
117117
log("total changes: \(totalChanges)")
118118
return totalChanges
119119
}
120120

121-
public init(path: String, recreateDB: Bool = false) throws {
122-
if recreateDB {
123-
try deleteDB(path: path)
124-
}
121+
/// - Parameter recreate: Set to `true` to have the sqlite file deleted and recreated. Defaults to `false`.
122+
public init(path: String, recreate: Bool = false) throws {
123+
self.path = path
124+
125+
if recreate { try deleteDB(path: path) }
125126

126127
var db: OpaquePointer?
127128

128129
if sqlite3_open(path, &db) == SQLITE_OK {
129-
dbPointer = db
130-
dbPath = path
130+
pointer = db
131131
setUp()
132132
log("database opened successfully, path: \(path)")
133133
} else {
@@ -136,15 +136,15 @@ final public class SQLite: SQLiteType {
136136
sqlite3_close(db)
137137
}
138138
}
139-
dbPointer = nil
140-
throw SQLiteError.OpenDB(getErrorMessage(dbPointer: db))
139+
pointer = nil
140+
throw SQLiteError.OpenDB("SQLite can't be opened")
141141
}
142142
}
143143

144144
deinit {
145-
if dbPointer != nil {
146-
sqlite3_close(dbPointer)
147-
dbPointer = nil
145+
if pointer != nil {
146+
sqlite3_close(pointer)
147+
pointer = nil
148148
}
149149
}
150150

@@ -169,8 +169,8 @@ final public class SQLite: SQLiteType {
169169
#endif
170170
}
171171

172-
private func getErrorMessage(dbPointer: OpaquePointer?) -> String {
173-
if let errorPointer = sqlite3_errmsg(dbPointer) {
172+
private func getErrorMessage(pointer: OpaquePointer?) -> String {
173+
if let errorPointer = sqlite3_errmsg(pointer) {
174174
let errorMessage = String(cString: errorPointer)
175175
return errorMessage
176176
}
@@ -179,8 +179,8 @@ final public class SQLite: SQLiteType {
179179

180180
private func prepareStatement(sql: String) throws -> OpaquePointer? {
181181
var queryStatement: OpaquePointer?
182-
guard sqlite3_prepare_v2(dbPointer, sql, -1, &queryStatement, nil) == SQLITE_OK else {
183-
throw SQLiteError.Prepare(getErrorMessage(dbPointer: dbPointer))
182+
guard sqlite3_prepare_v2(pointer, sql, -1, &queryStatement, nil) == SQLITE_OK else {
183+
throw SQLiteError.Prepare(getErrorMessage(pointer: pointer))
184184
}
185185
return queryStatement
186186
}
@@ -191,7 +191,7 @@ final public class SQLite: SQLiteType {
191191
let paramsCount = sqlite3_bind_parameter_count(sqlStatement)
192192
let count = params.count
193193
if paramsCount != Int32(count) {
194-
throw SQLiteError.Bind(getErrorMessage(dbPointer: dbPointer))
194+
throw SQLiteError.Bind(getErrorMessage(pointer: pointer))
195195
}
196196

197197
for index in 0...(count-1) {
@@ -221,7 +221,7 @@ final public class SQLite: SQLiteType {
221221
}
222222

223223
guard statusCode == SQLITE_OK else {
224-
throw SQLiteError.Bind(getErrorMessage(dbPointer: dbPointer))
224+
throw SQLiteError.Bind(getErrorMessage(pointer: pointer))
225225
}
226226
}
227227
}
@@ -238,10 +238,10 @@ final public class SQLite: SQLiteType {
238238
try bindPlaceholders(sqlStatement: sqlStatement, params: params)
239239

240240
guard sqlite3_step(sqlStatement) == SQLITE_DONE else {
241-
throw SQLiteError.Step(getErrorMessage(dbPointer: dbPointer))
241+
throw SQLiteError.Step(getErrorMessage(pointer: pointer))
242242
}
243243

244-
return Int(sqlite3_changes(dbPointer))
244+
return Int(sqlite3_changes(pointer))
245245
}
246246
}
247247

@@ -413,7 +413,7 @@ final public class SQLite: SQLiteType {
413413
sqlite3_finalize(sqlStatement)
414414
}
415415
guard sqlite3_step(sqlStatement) == SQLITE_ROW else {
416-
throw SQLiteError.Step(getErrorMessage(dbPointer: dbPointer))
416+
throw SQLiteError.Step(getErrorMessage(pointer: pointer))
417417
}
418418
count = sqlite3_column_int(sqlStatement, 0)
419419
log("successfully got a row count in \(table.name): \(count)")
@@ -435,7 +435,7 @@ final public class SQLite: SQLiteType {
435435
try bindPlaceholders(sqlStatement: sqlStatement, params: params)
436436

437437
guard sqlite3_step(sqlStatement) == SQLITE_ROW else {
438-
throw SQLiteError.Step(getErrorMessage(dbPointer: dbPointer))
438+
throw SQLiteError.Step(getErrorMessage(pointer: pointer))
439439
}
440440
count = sqlite3_column_int(sqlStatement, 0)
441441
log("successfully got a row count with condition: \(count), sql: \(sql)")
@@ -463,7 +463,7 @@ final public class SQLite: SQLiteType {
463463
var rowValues: SQLValues = SQLValues([])
464464

465465
guard let resultColumns = try? getResultColumns(table, sqlStatement: sqlStatement) else {
466-
throw SQLiteError.Column(getErrorMessage(dbPointer: dbPointer))
466+
throw SQLiteError.Column(getErrorMessage(pointer: pointer))
467467
}
468468

469469
while sqlite3_step(sqlStatement) == SQLITE_ROW {
@@ -542,10 +542,10 @@ final public class SQLite: SQLiteType {
542542
if let validatedColumnName = String(validatingCString: columnName) {
543543
columnNamesToReturn.append(validatedColumnName)
544544
} else {
545-
throw SQLiteError.Column(getErrorMessage(dbPointer: dbPointer))
545+
throw SQLiteError.Column(getErrorMessage(pointer: pointer))
546546
}
547547
} else {
548-
throw SQLiteError.Column(getErrorMessage(dbPointer: dbPointer))
548+
throw SQLiteError.Column(getErrorMessage(pointer: pointer))
549549
}
550550
}
551551
var resultColumns: SQLTableColums = []

0 commit comments

Comments
 (0)