// // Copyright Amazon.com Inc. or its affiliates. // All Rights Reserved. // // SPDX-License-Identifier: Apache-2.0 // import Foundation import Network /// Provides a network monitor for logging protocol LoggingNetworkMonitor: AnyObject { var isOnline: Bool { get } func startMonitoring(using queue: DispatchQueue) func stopMonitoring() } extension NWPathMonitor: LoggingNetworkMonitor { var isOnline: Bool { currentPath.status == .satisfied } func startMonitoring(using queue: DispatchQueue) { start(queue: queue) } func stopMonitoring() { cancel() } }