Emcee
32 строки · 880.0 Байт
1import Dispatch
2import Foundation
3import EmceeLogging
4import EmceeLoggingModels
5import RESTMethods
6import RequestSender
7import Types
8
9public final class LogEntrySenderImpl: LogEntrySender {
10private let requestSender: RequestSender
11private let requestsTimeout = 10.0
12
13public init(requestSender: RequestSender) {
14self.requestSender = requestSender
15}
16
17public func send(
18logEntry: LogEntry,
19callbackQueue: DispatchQueue,
20completion: @escaping (Error?) -> ()
21) {
22requestSender.sendRequestWithCallback(
23request: LogEntryNetworkRequest(
24payload: logEntry,
25timeout: requestsTimeout
26),
27callbackQueue: callbackQueue
28) { (requestResult: Either<VoidPayload, RequestSenderError>) in
29completion(requestResult.right)
30}
31}
32}
33