mirror of
https://github.com/DefinedNet/mobile_nebula.git
synced 2025-02-15 16:25:26 +00:00
Convert dict to sendable string before throwing
This commit is contained in:
parent
985508fd79
commit
821ceb41ce
1 changed files with 5 additions and 4 deletions
|
@ -6,7 +6,7 @@ import os.log
|
||||||
let log = Logger(subsystem: "net.defined.mobileNebula", category: "Site")
|
let log = Logger(subsystem: "net.defined.mobileNebula", category: "Site")
|
||||||
|
|
||||||
enum SiteError: Error {
|
enum SiteError: Error {
|
||||||
case nonConforming(site: [String: any Sendable]?)
|
case nonConforming(siteDict: String)
|
||||||
case noCertificate
|
case noCertificate
|
||||||
case keyLoad
|
case keyLoad
|
||||||
case keySave
|
case keySave
|
||||||
|
@ -21,8 +21,8 @@ enum SiteError: Error {
|
||||||
extension SiteError: CustomStringConvertible {
|
extension SiteError: CustomStringConvertible {
|
||||||
public var description: String {
|
public var description: String {
|
||||||
switch self {
|
switch self {
|
||||||
case .nonConforming(let site):
|
case .nonConforming(let siteDict):
|
||||||
return String("Non-conforming site \(String(describing: site))")
|
return String("Non-conforming site \(siteDict)")
|
||||||
case .noCertificate:
|
case .noCertificate:
|
||||||
return "No certificate found"
|
return "No certificate found"
|
||||||
case .keyLoad:
|
case .keyLoad:
|
||||||
|
@ -209,7 +209,8 @@ class Site: Codable, @unchecked Sendable {
|
||||||
|
|
||||||
let id = dict?["id"] as? String ?? nil
|
let id = dict?["id"] as? String ?? nil
|
||||||
if id == nil {
|
if id == nil {
|
||||||
throw SiteError.nonConforming(site: dict)
|
// Describe `dict` before passing to the error.
|
||||||
|
throw SiteError.nonConforming(siteDict: "\(String(describing: dict))")
|
||||||
}
|
}
|
||||||
|
|
||||||
try self.init(path: SiteList.getSiteConfigFile(id: id!, createDir: false))
|
try self.init(path: SiteList.getSiteConfigFile(id: id!, createDir: false))
|
||||||
|
|
Loading…
Reference in a new issue