Skip to content
Snippets Groups Projects
Commit f7e06ff7 authored by Dariusz Rybicki's avatar Dariusz Rybicki
Browse files

Add Logger

parent 3aff7ba4
No related branches found
No related tags found
2 merge requests!102Release 1.0.0,!101Messenger example - logging
...@@ -67,6 +67,7 @@ let package = Package( ...@@ -67,6 +67,7 @@ let package = Package(
.target( .target(
name: "AppCore", name: "AppCore",
dependencies: [ dependencies: [
.product(name: "Pulse", package: "Pulse"),
.product(name: "XCTestDynamicOverlay", package: "xctest-dynamic-overlay"), .product(name: "XCTestDynamicOverlay", package: "xctest-dynamic-overlay"),
.product(name: "XXClient", package: "elixxir-dapps-sdk-swift"), .product(name: "XXClient", package: "elixxir-dapps-sdk-swift"),
.product(name: "XXDatabase", package: "client-ios-db"), .product(name: "XXDatabase", package: "client-ios-db"),
......
import Foundation
import Pulse
import XCTestDynamicOverlay
public struct Logger {
public enum Message: Equatable {
case error(NSError)
}
public var run: (Message, String, String, UInt) -> Void
public func callAsFunction(
_ msg: Message,
file: String = #file,
function: String = #function,
line: UInt = #line
) {
run(msg, file, function, line)
}
}
extension Logger {
public static func live() -> Logger {
Logger { msg, file, function, line in
switch msg {
case .error(let error):
LoggerStore.shared.storeMessage(
label: "xx-messenger",
level: .error,
message: error.localizedDescription,
metadata: [:],
file: file,
function: function,
line: line
)
}
}
}
}
extension Logger {
public static let unimplemented = Logger(
run: XCTUnimplemented("\(Self.self).error")
)
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment