@Override
- public void writeChatRoomInfo(Flux<ChatRoomInfo> chatRoomInfoFlux)
+ public Flux<ChatRoomInfo> writeChatRoomInfo(Flux<ChatRoomInfo> chatRoomInfoFlux)
{
- chatRoomInfoFlux
+ return chatRoomInfoFlux
.map(ChatRoomTo::from)
- .subscribe(chatroomTo -> chatRoomRepository.save(chatroomTo));
+ .map(chatroomTo -> chatRoomRepository.save(chatroomTo))
+ .map(ChatRoomTo::toChatRoomInfo);
}
@Override
.map(chatRoomTo ->
{
UUID chatRoomId = UUID.fromString(chatRoomTo.getId());
- int shard = shardingStrategy.selectShard(chatRoomId);
-
- log.info(
- "{} - old shard: {}, new shard: {}",
- chatRoomId,
- chatRoomTo.getShard(),
- shard);
-
- return new ChatRoomInfo(
- chatRoomId,
- chatRoomTo.getName(),
- shard);
+ return new ChatRoomInfo(chatRoomId, chatRoomTo.getName(), null);
});
}
@Override
- public void writeChatRoomData(UUID chatRoomId, Flux<Message> messageFlux)
+ public Flux<Message> writeChatRoomData(UUID chatRoomId, Flux<Message> messageFlux)
{
- messageFlux
+ return messageFlux
.map(message -> MessageTo.from(chatRoomId, message))
- .subscribe(messageTo -> messageRepository.save(messageTo));
+ .map(messageTo -> messageRepository.save(messageTo))
+ .map(MessageTo::toMessage);
}
@Override