@@ -4,10 +4,6 @@ import Foundation
44import FoundationNetworking
55#endif
66
7- #if !os(Linux)
8- import os. log
9- #endif
10-
117/**
128 Provides an EventSource client for consuming Server-Sent Events.
139
@@ -87,19 +83,14 @@ public class EventSource {
8783}
8884
8985class EventSourceDelegate : NSObject , URLSessionDataDelegate {
90- #if !os(Linux)
91- private let logger : OSLog = OSLog ( subsystem: " com.launchdarkly.swift-eventsource " , category: " LDEventSource " )
92- #endif
86+ private let delegateQueue : DispatchQueue = DispatchQueue ( label: " ESDelegateQueue " )
87+ private let logger = Logs ( )
9388
9489 private let config : EventSource . Config
9590
96- private let delegateQueue : DispatchQueue = DispatchQueue ( label: " ESDelegateQueue " )
97-
9891 private var readyState : ReadyState = . raw {
9992 didSet {
100- #if !os(Linux)
101- os_log ( " State: %@ -> %@ " , log: logger, type: . debug, oldValue. rawValue, readyState. rawValue)
102- #endif
93+ logger. log ( . debug, " State: %@ -> %@ " , oldValue. rawValue, readyState. rawValue)
10394 }
10495 }
10596
@@ -125,9 +116,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
125116 delegateQueue. async {
126117 guard self . readyState == . raw
127118 else {
128- #if !os(Linux)
129- os_log ( " start() called on already-started EventSource object. Returning " , log: self . logger, type: . info)
130- #endif
119+ self . logger. log ( . info, " start() called on already-started EventSource object. Returning " )
131120 return
132121 }
133122 self . urlSession = self . createSession ( )
@@ -167,9 +156,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
167156 }
168157
169158 private func connect( ) {
170- #if !os(Linux)
171- os_log ( " Starting EventSource client " , log: logger, type: . info)
172- #endif
159+ logger. log ( . info, " Starting EventSource client " )
173160 let connectionHandler : ConnectionHandler = (
174161 setReconnectionTime: { reconnectionTime in self . reconnectTime = reconnectionTime } ,
175162 setLastEventId: { eventId in self . lastEventId = eventId }
@@ -195,9 +182,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
195182 var nextState : ReadyState = . closed
196183 let currentState : ReadyState = readyState
197184 if errorHandlerAction == . shutdown {
198- #if !os(Linux)
199- os_log ( " Connection has been explicitly shut down by error handler " , log: logger, type: . info)
200- #endif
185+ logger. log ( . info, " Connection has been explicitly shut down by error handler " )
201186 nextState = . shutdown
202187 }
203188 readyState = nextState
@@ -222,9 +207,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
222207 let maxSleep = min ( config. maxReconnectTime, reconnectTime * pow( 2.0 , Double ( reconnectionAttempts) ) )
223208 let sleep = maxSleep / 2 + Double. random ( in: 0 ... ( maxSleep / 2 ) )
224209
225- #if !os(Linux)
226- os_log ( " Waiting %.3f seconds before reconnecting... " , log: logger, type: . info, sleep)
227- #endif
210+ logger. log ( . info, " Waiting %.3f seconds before reconnecting... " , sleep)
228211 delegateQueue. asyncAfter ( deadline: . now( ) + sleep) {
229212 self . connect ( )
230213 }
@@ -242,17 +225,13 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
242225
243226 if let error = error {
244227 if readyState != . shutdown && errorHandlerAction != . shutdown {
245- #if !os(Linux)
246- os_log ( " Connection error: %@ " , log: logger, type: . info, error. localizedDescription)
247- #endif
228+ logger. log ( . info, " Connection error: %@ " , error. localizedDescription)
248229 errorHandlerAction = dispatchError ( error: error)
249230 } else {
250231 errorHandlerAction = . shutdown
251232 }
252233 } else {
253- #if !os(Linux)
254- os_log ( " Connection unexpectedly closed. " , log: logger, type: . info)
255- #endif
234+ logger. log ( . info, " Connection unexpectedly closed. " )
256235 }
257236
258237 afterComplete ( )
@@ -263,9 +242,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
263242 dataTask: URLSessionDataTask ,
264243 didReceive response: URLResponse ,
265244 completionHandler: @escaping ( URLSession . ResponseDisposition ) -> Void ) {
266- #if !os(Linux)
267- os_log ( " initial reply received " , log: logger, type: . debug)
268- #endif
245+ logger. log ( . debug, " Initial reply received " )
269246
270247 guard readyState != . shutdown
271248 else {
@@ -281,9 +258,7 @@ class EventSourceDelegate: NSObject, URLSessionDataDelegate {
281258 config. handler. onOpened ( )
282259 completionHandler ( . allow)
283260 } else {
284- #if !os(Linux)
285- os_log ( " Unsuccessful response: %d " , log: logger, type: . info, httpResponse. statusCode)
286- #endif
261+ logger. log ( . info, " Unsuccessful response: %d " , httpResponse. statusCode)
287262 errorHandlerAction = dispatchError ( error: UnsuccessfulResponseError ( responseCode: httpResponse. statusCode) )
288263 completionHandler ( . cancel)
289264 }
0 commit comments