Skip to content

Commit ab4f9e7

Browse files
committed
[IDLE-587] 서버 <-> 클라이언트 상호 테스트 완료
1 parent cb9d01a commit ab4f9e7

File tree

2 files changed

+21
-30
lines changed

2 files changed

+21
-30
lines changed

core/data/src/main/java/com/idle/data/repository/ChatRepositoryImpl.kt

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -107,28 +107,30 @@ class ChatRepositoryImpl @Inject constructor(
107107
)
108108
}
109109

110-
messages.map {
111-
val message = it.toVO()
112-
113-
if (!localChatDataSource.isChatRoomExist(message.roomId, myId)) {
114-
localChatDataSource.insertChatRoom(
115-
myId = myId,
116-
chatRoom = ChatRoom(
117-
id = message.roomId,
118-
opponentId = if (myId == message.senderId) message.receiverId else message.senderId,
119-
lastMessage = message.content,
120-
lastMessageTime = message.createdAt,
121-
unReadMessageCount = 1,
110+
messages
111+
.sortedBy { it.sequence }
112+
.map {
113+
val message = it.toVO()
114+
115+
if (!localChatDataSource.isChatRoomExist(message.roomId, myId)) {
116+
localChatDataSource.insertChatRoom(
117+
myId = myId,
118+
chatRoom = ChatRoom(
119+
id = message.roomId,
120+
opponentId = if (myId == message.senderId) message.receiverId else message.senderId,
121+
lastMessage = message.content,
122+
lastMessageTime = message.createdAt,
123+
unReadMessageCount = 1,
124+
)
122125
)
123-
)
124-
}
126+
}
125127

126-
val maxSeq =
127-
localChatDataSource.getMaxLocalSequence(roomId, myId) ?: Int.MIN_VALUE
128-
if (message.sequence > maxSeq) {
129-
localChatDataSource.insertMessage(message, myId)
128+
val maxSeq =
129+
localChatDataSource.getMaxLocalSequence(roomId, myId) ?: Int.MIN_VALUE
130+
if (message.sequence > maxSeq) {
131+
localChatDataSource.insertMessage(message, myId)
132+
}
130133
}
131-
}
132134
}.getOrThrow()
133135
}
134136

core/network/src/main/java/com/idle/network/source/ChatDataSource.kt

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
package com.idle.network.source
22

3-
import android.util.Log
43
import com.idle.domain.model.auth.UserType
54
import com.idle.network.BuildConfig
65
import com.idle.network.api.ChatApi
76
import com.idle.network.di.TokenManager
8-
import com.idle.network.model.chat.ChatMessageResponse
97
import com.idle.network.model.chat.ChatResponse
108
import com.idle.network.model.chat.GenerateChatRoomResponse
119
import com.idle.network.model.chat.GetChatMessageResponse
@@ -93,7 +91,6 @@ class ChatDataSource @Inject constructor(
9391
connectionAttempts++
9492
connectWebSocket().getOrThrow()
9593
} else {
96-
Log.d("test connect", throwable.stackTraceToString())
9794
throw throwable
9895
}
9996
}
@@ -102,7 +99,6 @@ class ChatDataSource @Inject constructor(
10299
session?.disconnect()
103100
Result.success(Unit)
104101
} catch (e: Exception) {
105-
Log.d("test disconnect", e.stackTraceToString())
106102
Result.failure(e)
107103
}
108104

@@ -111,7 +107,6 @@ class ChatDataSource @Inject constructor(
111107
StompSubscribeHeaders(destination = "/sub/${userId}"),
112108
chatResponseSerializer,
113109
)?.map {
114-
Log.d("test", it.toString())
115110
it
116111
} ?: flow { throw IOException("웹소켓을 먼저 연결해주세요.") }
117112

@@ -120,23 +115,17 @@ class ChatDataSource @Inject constructor(
120115
sendMessageRequest: SendMessageRequest
121116
): Result<Unit> =
122117
runCatching {
123-
Log.d("test", "/pub/send/${userType.apiValue.lowercase()}")
124-
125118
val result = session?.convertAndSend(
126119
headers = StompSendHeaders(destination = "/pub/send/${userType.apiValue.lowercase()}"),
127120
body = sendMessageRequest,
128121
serializer = SendMessageRequest.serializer(),
129122
)
130-
131-
Log.d("test", result.toString())
132123
}
133124

134125
suspend fun readMessage(
135126
userType: UserType,
136127
readMessageRequest: ReadMessageRequest
137128
): Result<Unit> = runCatching {
138-
Log.d("test", "/pub/read/${userType.apiValue.lowercase()}")
139-
140129
session?.convertAndSend(
141130
headers = StompSendHeaders(destination = "/pub/read/${userType.apiValue.lowercase()}"),
142131
body = readMessageRequest,

0 commit comments

Comments
 (0)