次の疑似コードがあります。
public void sendPB(ObjectId userId, Message.Builder mb) {
if (userId is logged in to server) {
set mb.ackId to random chars
lookup socket and send mb.build()
}
else {
forward message to user's server via RMI
}
}
問題は、Message.Builders が Serializable を実装していないため、RMI 経由で直接送信できないことです。
これを行う簡単な方法はありますか?
ビルダーから部分的な PB を構築して送信しようとしましたが、再構築するには、型または記述子を知る必要があります。Descriptor も Serializable を実装していません。
ありがとう