summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAndrej Mihajlov <and@mullvad.net>2022-05-13 15:51:08 +0200
committerAndrej Mihajlov <and@mullvad.net>2022-05-17 15:23:43 +0200
commitafd8189b33517e327bd302dbcd20fa852cdb6da4 (patch)
treeee5e134d357410ded1434df8e69104bc1b1cfcf3
parent210bc196cd9a01ec1b2baa4f5eb23dc1ccfce3f6 (diff)
downloadmullvadvpn-afd8189b33517e327bd302dbcd20fa852cdb6da4.tar.xz
mullvadvpn-afd8189b33517e327bd302dbcd20fa852cdb6da4.zip
REST: drop custom iso8601 parser
Newly deployed API returns iso8601 dates without fractional seconds.
-rw-r--r--ios/MullvadVPN/REST/RESTCoding.swift31
1 files changed, 1 insertions, 30 deletions
diff --git a/ios/MullvadVPN/REST/RESTCoding.swift b/ios/MullvadVPN/REST/RESTCoding.swift
index 8a5356e3bc..b8c917e6b4 100644
--- a/ios/MullvadVPN/REST/RESTCoding.swift
+++ b/ios/MullvadVPN/REST/RESTCoding.swift
@@ -27,36 +27,7 @@ extension REST.Coding {
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase
decoder.dataDecodingStrategy = .base64
-
- let iso8601Formatter = ISO8601DateFormatter()
-
- // Setup additional formatter to account for fractional seconds returned
- // by some of the API calls.
- lazy var iso8601WithSubSecondsFormatter: ISO8601DateFormatter = {
- let formatter = ISO8601DateFormatter()
- formatter.formatOptions.insert(.withFractionalSeconds)
- return formatter
- }()
-
- decoder.dateDecodingStrategy = .custom({ decoder in
- let container = try decoder.singleValueContainer()
- let value = try container.decode(String.self)
-
- let date = iso8601Formatter.date(from: value) ??
- iso8601WithSubSecondsFormatter.date(from: value)
-
- switch date {
- case .some(let parsedDate):
- return parsedDate
-
- case .none:
- throw DecodingError.dataCorruptedError(
- in: container,
- debugDescription: "Expected date string to be RFC3339 or ISO8601-formatted."
- )
- }
- })
-
+ decoder.dateDecodingStrategy = .iso8601
return decoder
}
}