Skip to content

Commit 97c35ff

Browse files
committed
Change needLogin to loginRequired
1 parent e694318 commit 97c35ff

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed

Lib/StudyplusSDK/Studyplus.swift

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ final public class Studyplus {
117117
/// - completion: 投稿完了後のコールバック
118118
public func post(_ record: StudyplusRecord, completion: @escaping (Result<Void, StudyplusPostError>) -> Void) {
119119
guard let accessToken = self.accessToken() else {
120-
completion(.failure(.needLogin))
120+
completion(.failure(.loginRequired))
121121
return
122122
}
123123

@@ -126,7 +126,21 @@ final public class Studyplus {
126126
return
127127
}
128128

129-
StudyplusAPI(accessToken: accessToken).post(record, completion: completion)
129+
StudyplusAPI(accessToken: accessToken).post(record, completion: { result in
130+
switch result {
131+
case .failure(let error):
132+
switch error {
133+
case .loginRequired:
134+
// clear invalid access token
135+
StudyplusKeychain.deleteAll(serviceName: self.serviceName)
136+
default:
137+
break
138+
}
139+
case .success: break
140+
}
141+
142+
completion(result)
143+
})
130144
}
131145

132146
/// It is responsible for processing custom URL scheme

Lib/StudyplusSDK/StudyplusError.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,9 @@ import Foundation
2828

2929
public enum StudyplusPostError: Error {
3030
case invalidDuration
31-
case needLogin
3231
case offline
3332
case badRequest
34-
case invalidAccessToken
33+
case loginRequired
3534
case serverError
3635
case unknown(_ message: String)
3736

@@ -40,7 +39,7 @@ public enum StudyplusPostError: Error {
4039
case 400:
4140
return .badRequest
4241
case 401:
43-
return .invalidAccessToken
42+
return .loginRequired
4443
case 500...599:
4544
return .serverError
4645
default:

0 commit comments

Comments
 (0)