taler-ios

iOS apps for GNU Taler (wallet)
Log | Files | Refs | README | LICENSE

commit 757ff2db42556c2215d4623b6fe3fee3309b80ff
parent 5674737605c5b4ae5ef63802d613e768ced48d73
Author: Marc Stibane <marc@taler.net>
Date:   Sat, 14 Feb 2026 10:55:27 +0100

getDiagnostics

Diffstat:
MTalerWallet1/Model/WalletModel.swift | 16++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/TalerWallet1/Model/WalletModel.swift b/TalerWallet1/Model/WalletModel.swift @@ -113,7 +113,6 @@ struct TalerErrorDetail: Codable, Hashable { class WalletModel: ObservableObject { public static let shared = WalletModel() let logger = Logger(subsystem: "net.taler.gnu", category: "WalletModel") - let semaphore = AsyncSemaphore(value: 1) @Published var error2: ErrorData? = nil @@ -476,8 +475,15 @@ fileprivate struct ImportDbFromFile: WalletBackendFormattedRequest { struct Response: Decodable {} } +fileprivate struct GetDiagnostics: WalletBackendFormattedRequest { + func operation() -> String { "getDiagnostics" } + func args() -> Args { Args() } + struct Args: Encodable {} // no arguments needed + typealias Response = String +} + extension WalletModel { - /// export DB + /// export, import DB, get diagnostics nonisolated func exportDbToFile(stem: String, viewHandles: Bool = false) async throws -> String? { if let docDirUrl = URL.docDirUrl { @@ -495,6 +501,12 @@ extension WalletModel { let request = ImportDbFromFile(path: path) _ = try await sendRequest(request, viewHandles: viewHandles) } + nonisolated func getDiagnostics(viewHandles: Bool = false) + async throws -> String { + let request = GetDiagnostics() + let response = try await sendRequest(request, viewHandles: viewHandles, asJSON: true) + return response + } } // MARK: - fileprivate struct DevExperimentRequest: WalletBackendFormattedRequest {