[bisq-network/bisq] (6/6) Clean up technical debt in P2PDataStorage and ProtectedStorageEntry objects (#3747)
Julian Knutsen
notifications at github.com
Wed Dec 4 20:21:38 UTC 2019
b6b0026
## Motivation
This PR cleans up technical debt in the P2PDataStorage and the ProtectedStorageEntry objects that should be done before new features are added.
Future patches will change these objects quite a bit and getting them into a state that is easy to reason about will make the reviews easier.
## Testing
All existing unit tests continue to pass
You can view, comment on, or merge this pull request online at:
https://github.com/bisq-network/bisq/pull/3747
-- Commit Summary --
* [TESTS] Add tests of requestData
* [REFACTOR] Introduce buildGetDataRequest variants
* [TESTS] Add tests of new RequestData APIs
* [TESTS] Add tests of GetDataRequestHandler
* [REFACTOR] Introduce buildGetDataResponse
* [REFACTOR] Extract connectionInfo String
* [REFACTOR] Extract getDataResponse logging
* [REFACTOR] Extract truncation logging
* [REFACTOR] Pass peerCapabilities into buildGetDataResponse
* [TESTS] Unit tests of buildGetDataResponse
* Remove redundant HashSet lookups in filter functions
* [REFACTOR] Move required capabilities log
* [REFACTOR] Inline capability check for ProtectedStorageEntries
* [REFACTOR] Inline filtering functions
* [REFACTOR] Remove duplication in filtering functions
* [BUGFIX] Fix off-by-one in truncation logic
* [TESTS] Add test of RequestDataHandler::onMessage
* [REFACTOR] Introduce processGetDataResponse
* [TESTS] Make verify() functions more flexible
* [TESTS] Add unit tests for processGetDataResponse
* Remove static from initialRequestApplied
* [TESTS] Write synchronization integration tests
* [REFACTOR] Clean up processGetDataResponse
* [RENAME] LazyProcessedPayload to ProcessOncePersistableNetworkPayload
* Remove @Nullable around persistableNetworkPayloadSet
* Remove @Nullable around supportedCapabilities in GetDataResponse
* Remove @Nullable around supportedCapabilities in PreliminaryGetDataRequest
* [DEADCODE] Remove old request handler tests
* Make addPersistableNetworkPayloadFromInitialRequest private
* [REFACTOR] Clean up ClientAPI for addPersistableNetworkPayload
* [REFACTOR] Clean up ClientAPI for addProtectedStorageEntry
* [REFACTOR] Clean up ClientAPI for remove
* [REFACTOR] Clean up ClientAPI for refreshTTL
* Make isDataOwner a private policy decision in BroadcastHandler
* Remove isDataOwner from P2PDataStorage
* [REFACTOR] inline broadcast() private function
* [REFACTOR] inline broadcastProtectedStorageEntry() private function
* [REFACTOR] inline maybeAddToRemoveAddOncePayloads() private function
* [TESTS] Clean up mockito never() and eq(null) usages
* Remove ProtectedStorageEntry::updateSignature
* Remove ProtectedStorageEntry::maybeAdjustCreationTimeStamp
* @NotNull ProtectedStorageEntry::ownerPubKey
* @NotNull ProtectedStorageEntry::protectedStoragePayload
* @NotNull MailboxStoragePayload::senderPubKeyForAddOperation
* Clean up P2PDataStorage::onDisconnect
* Make CHECK_TTL_INTERVAL_SEC final
-- File Changes --
M core/src/main/java/bisq/core/account/sign/SignedWitness.java (4)
M core/src/main/java/bisq/core/account/witness/AccountAgeWitness.java (4)
M core/src/main/java/bisq/core/alert/AlertManager.java (4)
M core/src/main/java/bisq/core/dao/governance/proposal/MyProposalListService.java (4)
M core/src/main/java/bisq/core/dao/governance/proposal/storage/temp/TempProposalPayload.java (4)
M core/src/main/java/bisq/core/dao/monitoring/network/StateNetworkService.java (2)
M core/src/main/java/bisq/core/dao/node/full/network/FullNodeNetworkService.java (2)
M core/src/main/java/bisq/core/dao/node/lite/network/LiteNodeNetworkService.java (2)
M core/src/main/java/bisq/core/filter/FilterManager.java (4)
M core/src/main/java/bisq/core/offer/OfferBookService.java (6)
M core/src/main/java/bisq/core/support/dispute/agent/DisputeAgentService.java (4)
M core/src/main/java/bisq/core/trade/statistics/TradeStatistics.java (4)
M core/src/main/java/bisq/core/trade/statistics/TradeStatistics2.java (4)
M monitor/src/main/java/bisq/monitor/metric/P2PMarketStats.java (19)
M monitor/src/main/java/bisq/monitor/metric/P2PSeedNodeSnapshot.java (19)
M p2p/src/main/java/bisq/network/p2p/P2PService.java (18)
M p2p/src/main/java/bisq/network/p2p/peers/BroadcastHandler.java (4)
M p2p/src/main/java/bisq/network/p2p/peers/Broadcaster.java (4)
M p2p/src/main/java/bisq/network/p2p/peers/getdata/GetDataRequestHandler.java (122)
M p2p/src/main/java/bisq/network/p2p/peers/getdata/RequestDataHandler.java (92)
M p2p/src/main/java/bisq/network/p2p/peers/getdata/messages/GetDataResponse.java (35)
M p2p/src/main/java/bisq/network/p2p/peers/getdata/messages/PreliminaryGetDataRequest.java (21)
M p2p/src/main/java/bisq/network/p2p/storage/P2PDataStorage.java (363)
M p2p/src/main/java/bisq/network/p2p/storage/payload/MailboxStoragePayload.java (4)
R p2p/src/main/java/bisq/network/p2p/storage/payload/ProcessOncePersistableNetworkPayload.java (7)
M p2p/src/main/java/bisq/network/p2p/storage/payload/ProtectedMailboxStorageEntry.java (7)
M p2p/src/main/java/bisq/network/p2p/storage/payload/ProtectedStorageEntry.java (71)
A p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageBuildGetDataResponseTest.java (481)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageClientAPITest.java (46)
A p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageGetDataIntegrationTest.java (193)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageOnMessageHandlerTest.java (6)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStoragePersistableNetworkPayloadTest.java (59)
A p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageProcessGetDataResponse.java (263)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageProtectedStorageEntryTest.java (31)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageRemoveExpiredTest.java (30)
A p2p/src/test/java/bisq/network/p2p/storage/P2PDataStorageRequestDataTest.java (171)
M p2p/src/test/java/bisq/network/p2p/storage/P2PDataStoreDisconnectTest.java (6)
M p2p/src/test/java/bisq/network/p2p/storage/TestState.java (91)
M p2p/src/test/java/bisq/network/p2p/storage/mocks/PersistableNetworkPayloadStub.java (12)
M p2p/src/test/java/bisq/network/p2p/storage/payload/ProtectedMailboxStorageEntryTest.java (15)
M p2p/src/test/java/bisq/network/p2p/storage/payload/ProtectedStorageEntryTest.java (33)
-- Patch Links --
https://github.com/bisq-network/bisq/pull/3747.patch
https://github.com/bisq-network/bisq/pull/3747.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/3747
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20191204/41ebddaa/attachment.html>
More information about the bisq-github
mailing list