Skip to content

Commit 152fa2a

Browse files
committed
♻️ suspendCoroutine을 suspendCancellableCoroutine로 변경
1 parent cd0c167 commit 152fa2a

File tree

1 file changed

+10
-15
lines changed

1 file changed

+10
-15
lines changed

data/src/main/java/com/whyranoid/data/group/GroupDataSource.kt

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,18 @@ import kotlinx.coroutines.suspendCancellableCoroutine
1515
import java.util.UUID
1616
import javax.inject.Inject
1717
import kotlin.coroutines.resume
18-
import kotlin.coroutines.suspendCoroutine
1918

2019
class GroupDataSource @Inject constructor(
2120
private val db: FirebaseFirestore
2221
) {
2322

24-
// TODO: suspendcancellablecoroutine로 변경
2523
suspend fun updateGroupInfo(
2624
groupId: String,
2725
groupName: String,
2826
groupIntroduce: String,
2927
rules: List<Rule>
3028
): Boolean {
31-
return suspendCoroutine { continuation ->
29+
return suspendCancellableCoroutine { cancellableContinuation ->
3230
db.collection(GROUPS_COLLECTION)
3331
.document(groupId)
3432
.update(
@@ -41,33 +39,31 @@ class GroupDataSource @Inject constructor(
4139
)
4240
)
4341
.addOnSuccessListener {
44-
continuation.resume(true)
42+
cancellableContinuation.resume(true)
4543
}
4644
.addOnFailureListener {
47-
continuation.resume(false)
45+
cancellableContinuation.resume(false)
4846
}
4947
}
5048
}
5149

52-
// TODO: suspendcancellablecoroutine로 변경
5350
suspend fun joinGroup(uid: String, groupId: String): Boolean {
54-
return suspendCoroutine<Boolean> { continuation ->
51+
return suspendCancellableCoroutine { cancellableContinuation ->
5552
db.collection(GROUPS_COLLECTION)
5653
.document(groupId)
5754
.update(
5855
GROUP_MEMBERS_ID,
5956
FieldValue.arrayUnion(uid)
6057
).addOnSuccessListener {
61-
continuation.resume(true)
58+
cancellableContinuation.resume(true)
6259
}.addOnFailureListener {
63-
continuation.resume(false)
60+
cancellableContinuation.resume(false)
6461
}
6562
}
6663
}
6764

68-
// TODO: suspendcancellablecoroutine로 변경
6965
suspend fun exitGroup(uid: String, groupId: String): Boolean {
70-
return suspendCoroutine { continuation ->
66+
return suspendCancellableCoroutine { cancellableContinuation ->
7167
db.collection(GROUPS_COLLECTION)
7268
.document(groupId)
7369
.update(
@@ -83,18 +79,17 @@ class GroupDataSource @Inject constructor(
8379
)
8480
)
8581
.addOnSuccessListener {
86-
continuation.resume(true)
82+
cancellableContinuation.resume(true)
8783
}
8884
.addOnFailureListener {
89-
continuation.resume(false)
85+
cancellableContinuation.resume(false)
9086
}
9187
}.addOnFailureListener {
92-
continuation.resume(false)
88+
cancellableContinuation.resume(false)
9389
}
9490
}
9591
}
9692

97-
// TODO Rule 추가
9893
suspend fun createGroup(
9994
groupName: String,
10095
introduce: String,

0 commit comments

Comments
 (0)