Refactor updatePost() to use template request
This commit is contained in:
parent
53fb9e1198
commit
092861fd54
|
@ -593,35 +593,21 @@ public class WFClient {
|
|||
completion(.failure(error))
|
||||
}
|
||||
|
||||
let dataTask = session.dataTask(with: request) { (data, response, error) in
|
||||
// Something went wrong; return the error message.
|
||||
if let error = error {
|
||||
completion(.failure(error))
|
||||
}
|
||||
|
||||
if let response = response as? HTTPURLResponse {
|
||||
guard let data = data else { return }
|
||||
|
||||
// If we get a 200 OK, return the WFPost as success; if not, return a WFError as failure.
|
||||
if response.statusCode == 200 {
|
||||
post(with: request, expecting: 200) { result in
|
||||
switch result {
|
||||
case .success(let data):
|
||||
do {
|
||||
let post = try self.decoder.decode(ServerData<WFPost>.self, from: data)
|
||||
|
||||
completion(.success(post.data))
|
||||
} catch {
|
||||
completion(.failure(error))
|
||||
}
|
||||
} else {
|
||||
// We didn't get a 200 OK, so return a WFError
|
||||
guard let error = self.translateWFError(fromServerResponse: data) else { return }
|
||||
case .failure(let error):
|
||||
completion(.failure(error))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dataTask.resume()
|
||||
}
|
||||
|
||||
/// Deletes an existing post.
|
||||
///
|
||||
/// - Attention: ⚠️ INCOMPLETE IMPLEMENTATION⚠️
|
||||
|
|
Loading…
Reference in New Issue