Răsfoiți Sursa

Added serialization duration property to the Timeline struct.

Christian Noon 9 ani în urmă
părinte
comite
0a2e6a214b
1 a modificat fișierele cu 7 adăugiri și 0 ștergeri
  1. 7 0
      Source/Timeline.swift

+ 7 - 0
Source/Timeline.swift

@@ -42,6 +42,9 @@ public struct Timeline {
     /// The time interval in seconds from the time the request started to the time the request completed.
     public let requestDuration: NSTimeInterval
 
+    /// The time interval in seconds from the time the request completed to the time response serialization completed.
+    public let serializationDuration: NSTimeInterval
+
     /// The time interval in seconds from the time the request started to the time response serialization completed.
     public let totalDuration: NSTimeInterval
 
@@ -58,6 +61,7 @@ public struct Timeline {
 
         self.latency = initialResponseTime - requestStartTime
         self.requestDuration = requestCompletedTime - requestStartTime
+        self.serializationDuration = serializationCompletedTime - requestCompletedTime
         self.totalDuration = serializationCompletedTime - requestStartTime
     }
 }
@@ -70,11 +74,13 @@ extension Timeline: CustomStringConvertible {
     public var description: String {
         let latency = String(format: "%.3f", self.latency)
         let requestDuration = String(format: "%.3f", self.requestDuration)
+        let serializationDuration = String(format: "%.3f", self.serializationDuration)
         let totalDuration = String(format: "%.3f", self.totalDuration)
 
         let timings = [
             "\"Latency\": \(latency) secs",
             "\"Request Duration\": \(requestDuration) secs",
+            "\"Serialization Duration\": \(serializationDuration) secs",
             "\"Total Duration\": \(totalDuration) secs"
         ]
 
@@ -96,6 +102,7 @@ extension Timeline: CustomDebugStringConvertible {
             "\"Serialization Completed Time\": \(serializationCompletedTime)",
             "\"Latency\": \(latency) secs",
             "\"Request Duration\": \(requestDuration) secs",
+            "\"Serialization Duration\": \(serializationDuration) secs",
             "\"Total Duration\": \(totalDuration) secs"
         ]