in UniversalBootstrapDemo/Sources/UniversalBootstrapDemo/main.swift [39:67]
func run() throws {
var group: EventLoopGroup? = nil
if self.forceTransportServices {
#if canImport(Network)
if #available(macOS 10.14, *) {
group = NIOTSEventLoopGroup()
} else {
print("Sorry, your OS is too old for Network.framework.")
Self.exit(withError: NoNetworkFrameworkError())
}
#else
print("Sorry, no Network.framework on your OS.")
Self.exit(withError: NoNetworkFrameworkError())
#endif
}
if self.forceBSDSockets {
group = MultiThreadedEventLoopGroup(numberOfThreads: 1)
}
defer {
try? group?.syncShutdownGracefully()
}
let provider: EventLoopGroupManager.Provider = group.map { .shared($0) } ?? .createNew
let httpClient = ExampleHTTPLibrary(groupProvider: provider)
defer {
try! httpClient.shutdown()
}
try httpClient.makeRequest(url: url)
}