[bisq-network/bisq] Persist and republish mailbox messages (#5072)

chimp1984 notifications at github.com
Mon Jan 11 01:52:05 CET 2021


For better resiliance in case all seed nodes would go offline, we persist the mailbox messages and republish them at startup.
We had already a persistence for own mailbox messages and reuse that but add all mailbox messages.
We check for the TTL to not publish expired messages as well we check if we have received a remove message for that mailbox message.
You can view, comment on, or merge this pull request online at:

  https://github.com/bisq-network/bisq/pull/5072

-- Commit Summary --

  * Refactor: Move mailbox related classed to mailbox package. Make constructor public.
  * Make some methods default
  * Move mailbox related code from P2PService to MailboxMessageService
  * Remove getMailBoxMessages from P2PService and use MailboxMessageService instead
  * Remove addDecryptedMailboxListener from P2PService and use MailboxMessageService instead
  * Remove removePrivateNotification from P2PService and use MailboxMessageService instead
  * Remove sendEncryptedMailboxMessage from P2PService and use MailboxMessageService instead
  * Cleanups
  * Fix null pointer
  * Add new methods, make decryptedMessageWithPubKey nullable
  * Refactor: Rename
  * Filter expired entries at startup
  * Refactor: Rename
  * Remove nullable return value from decryptProtectedMailboxStorageEntry
  * Add filter for isMine at getMyMailBoxMessages
  * Remove old code
  * Add onRemoved method to remove mailbox entries once a remove message arrives

-- File Changes --

    M core/src/main/java/bisq/core/alert/PrivateNotificationManager.java (10)
    M core/src/main/java/bisq/core/alert/PrivateNotificationMessage.java (2)
    M core/src/main/java/bisq/core/proto/persistable/CorePersistenceProtoResolver.java (2)
    M core/src/main/java/bisq/core/setup/CorePersistedDataHost.java (4)
    M core/src/main/java/bisq/core/support/SupportManager.java (17)
    M core/src/main/java/bisq/core/support/dispute/DisputeManager.java (6)
    M core/src/main/java/bisq/core/support/dispute/arbitration/ArbitrationManager.java (2)
    M core/src/main/java/bisq/core/support/messages/SupportMessage.java (2)
    M core/src/main/java/bisq/core/trade/closed/CleanupMailboxMessages.java (9)
    M core/src/main/java/bisq/core/trade/messages/CounterCurrencyTransferStartedMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/DepositTxAndDelayedPayoutTxMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/MediatedPayoutTxPublishedMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/MediatedPayoutTxSignatureMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/PayoutTxPublishedMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/PeerPublishedDelayedPayoutTxMessage.java (2)
    M core/src/main/java/bisq/core/trade/messages/RefreshTradeStateRequest.java (2)
    M core/src/main/java/bisq/core/trade/messages/TraderSignedWitnessMessage.java (2)
    M core/src/main/java/bisq/core/trade/protocol/TradeProtocol.java (16)
    M core/src/main/java/bisq/core/trade/protocol/tasks/SendMailboxMessageTask.java (2)
    M core/src/main/java/bisq/core/trade/protocol/tasks/mediation/SendMediatedPayoutSignatureMessage.java (2)
    M core/src/main/java/bisq/core/user/Cookie.java (7)
    M p2p/src/main/java/bisq/network/p2p/AckMessage.java (1)
    M p2p/src/main/java/bisq/network/p2p/P2PService.java (376)
    M p2p/src/main/java/bisq/network/p2p/PrefixedSealedAndSignedMessage.java (2)
    R p2p/src/main/java/bisq/network/p2p/mailbox/MailboxItem.java (52)
    R p2p/src/main/java/bisq/network/p2p/mailbox/MailboxMessage.java (6)
    R p2p/src/main/java/bisq/network/p2p/mailbox/MailboxMessageList.java (4)
    A p2p/src/main/java/bisq/network/p2p/mailbox/MailboxMessageService.java (589)
    M p2p/src/main/java/bisq/network/p2p/network/SetupListener.java (6)
    M p2p/src/main/java/bisq/network/p2p/peers/getdata/RequestDataManager.java (6)
    M p2p/src/main/java/bisq/network/p2p/storage/P2PDataStorage.java (9)
    M p2p/src/test/java/bisq/network/p2p/mocks/MockMailboxPayload.java (2)

-- Patch Links --

https://github.com/bisq-network/bisq/pull/5072.patch
https://github.com/bisq-network/bisq/pull/5072.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/bisq-network/bisq/pull/5072
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20210110/2c487268/attachment.htm>


More information about the bisq-github mailing list