mirror of
https://github.com/nicoverbruggen/phpmon.git
synced 2025-11-09 13:10:24 +01:00
👌 Cleanup
This commit is contained in:
@@ -138,18 +138,19 @@ class Shell {
|
|||||||
task.standardOutput = outputPipe
|
task.standardOutput = outputPipe
|
||||||
task.standardError = errorPipe
|
task.standardError = errorPipe
|
||||||
|
|
||||||
outputPipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
[(outputPipe, didReceiveStdOutData), (errorPipe, didReceiveStdErrData)].forEach {
|
||||||
NotificationCenter.default.addObserver(forName: NSNotification.Name.NSFileHandleDataAvailable, object: outputPipe.fileHandleForReading, queue: nil) { notification in
|
(pipe: Pipe, callback: @escaping (String) -> Void) in
|
||||||
let outputString = String(data: outputPipe.fileHandleForReading.availableData, encoding: String.Encoding.utf8) ?? ""
|
pipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
||||||
didReceiveStdOutData(outputString)
|
NotificationCenter.default.addObserver(
|
||||||
outputPipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
forName: NSNotification.Name.NSFileHandleDataAvailable,
|
||||||
}
|
object: pipe.fileHandleForReading,
|
||||||
|
queue: nil
|
||||||
errorPipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
) { notification in
|
||||||
NotificationCenter.default.addObserver(forName: NSNotification.Name.NSFileHandleDataAvailable, object: errorPipe.fileHandleForReading, queue: nil) { notification in
|
if let outputString = String(data: pipe.fileHandleForReading.availableData, encoding: String.Encoding.utf8) {
|
||||||
let outputString = String(data: errorPipe.fileHandleForReading.availableData, encoding: String.Encoding.utf8) ?? ""
|
callback(outputString)
|
||||||
didReceiveStdErrData(outputString)
|
}
|
||||||
errorPipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
pipe.fileHandleForReading.waitForDataInBackgroundAndNotify()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user