Commit graph

473 commits

Author SHA1 Message Date
chimp1984
1c07be0507
Use only node address for equals and hashcode
Make capabilities final

If capability changes we would have had duplicate entries
2020-10-08 18:23:01 -05:00
chimp1984
17974f3dcc
Refactor: move SupportedCapabilitiesMessage handling code out to a method
Return early
2020-10-08 18:23:01 -05:00
chimp1984
9821dd6271
Clear capabilitiesListeners at shutdown
Improve logs
2020-10-08 18:23:01 -05:00
chimp1984
8aec306159
Remove verification for address prefix
Set address prefix to empty bytes in case we know that peer has capability (updated version)
Batch process mailbox messages in a thread.
Refactor handling of mailbox messages
2020-10-08 18:23:01 -05:00
chimp1984
40f9cfb7c5
Add methods for getting peers capabilities 2020-10-08 18:23:00 -05:00
chimp1984
6f7dfcf4ef
Make onRemoved default in interface 2020-10-08 18:23:00 -05:00
chimp1984
e73a4b4ae4
Cleanups
Remove debug log, remove annotation
2020-10-08 18:23:00 -05:00
chimp1984
e9db7c6808
Rename Priority to Source. This should make it more clear what is the intention of the usage.
Rename:
LOW to NETWORK
MID to PRIVATE_LOW_PRIO
HIGH to PRIVATE

Change delay of MID/PRIVATE_LOW_PRIO from 30 min to 2 hours (we had different datastores before using it, now its only real low prio stores)

Add comment to each enum
2020-10-03 12:48:23 -05:00
chimp1984
137b5e81d1
Enforce that clients set the priority. Remove the initialize methods which did not have priority as a param.
Make initializePersistenceManager in StorageService abstract to enforce in concrete class to define priority.

Change priorities for future renaming to a different meaning. instead of priority we want to describe the category: private data, public data,.... will come in next commit
2020-10-03 12:48:22 -05:00
chimp1984
fa0d261397
Fix remaining issues, cleanups, add persit calls, remove unused code,...
Sorry too tired to create another 20 commits...
2020-10-03 12:48:21 -05:00
chimp1984
fae1cda701
Use PersistenceManager 2020-10-03 12:48:19 -05:00
chimp1984
406afa9dad
Use PersistenceManager. Add setAll method 2020-10-03 12:48:19 -05:00
chimp1984
34d89092ad
Add final at ResourceDataStoreService
Remove clone from SequenceNumberMap.
2020-10-03 12:48:17 -05:00
chimp1984
827775c32c
Add missing import 2020-10-03 12:48:16 -05:00
chimp1984
94944393cf
Use PersistenceManager in HistoricalDataStoreService 2020-10-03 12:48:16 -05:00
chimp1984
0682b991f7
Update ProtectedDataStoreService
Use AtomicReference instead of array, add final
2020-10-03 12:48:16 -05:00
chimp1984
e2f0f61943
Update PersistableNetworkPayloadStore 2020-10-03 12:48:16 -05:00
chimp1984
5a1cd0ee2c
Use PersistableNetworkPayloadStore for AppendOnlyDataStoreService 2020-10-03 12:48:16 -05:00
chimp1984
92b0ea9f13
Use PersistenceManager for MapStoreService (not yet supported for subclasses) 2020-10-03 12:48:16 -05:00
chimp1984
2e55251bcf
Use PersistenceManager for StoreService (not yet supported for subclasses) 2020-10-03 12:48:16 -05:00
chimp1984
3a348d5a0f
Remove ThreadedPersistableEnvelope and use PersistableEnvelope instead
We will not need threading support anymore once we use the new persistenceManager as serialisation is done on the userThread.
2020-10-03 12:48:16 -05:00
chimp1984
cda9d9eccf
Refactor: Move other 2 classes to file package 2020-10-03 12:48:14 -05:00
chimp1984
8aff1f8665
Refactor: Move FileUtil 2020-10-03 12:48:14 -05:00
chimp1984
807b9fc5be
Remove unused method, fix typo, remove unneeded annotations 2020-10-02 13:29:35 -05:00
chimp1984
308aa162e8
Update p2p/src/main/java/bisq/network/p2p/storage/P2PDataStorage.java
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
2020-10-02 13:26:11 -05:00
chimp1984
e9c57b1a4b
Update p2p/src/main/java/bisq/network/p2p/storage/P2PDataStorage.java
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
2020-10-02 13:25:51 -05:00
chimp1984
611bcef461
Update p2p/src/main/java/bisq/network/p2p/storage/persistence/HistoricalDataStoreService.java
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
2020-10-02 13:23:12 -05:00
chimp1984
35d13fb018
Make putIfAbsent method more clear 2020-10-02 13:22:25 -05:00
chimp1984
9d517140b2
Update p2p/src/main/java/bisq/network/p2p/storage/persistence/HistoricalDataStoreService.java
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
2020-10-02 13:16:04 -05:00
chimp1984
d3384e66e5
Update p2p/src/main/java/bisq/network/p2p/storage/persistence/HistoricalDataStoreService.java
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
2020-10-02 13:15:51 -05:00
chimp1984
c308791321
Add license 2020-10-01 16:36:12 -05:00
chimp1984
3ee60d5cdc
Add license 2020-10-01 16:35:41 -05:00
chimp1984
a1debd8070
Fix grammar 2020-10-01 16:33:21 -05:00
chimp1984
58efb62b84
Refactoring: Rearrange method (moved method) 2020-10-01 15:12:15 -05:00
chimp1984
62836d79f5
Add support for HistoricalDataStoreService 2020-10-01 15:08:43 -05:00
chimp1984
3fb73ac0a3
Add HistoricalDataStoreService 2020-10-01 15:06:04 -05:00
chimp1984
c79504c841
Add getter (needed later) 2020-10-01 15:05:46 -05:00
chimp1984
384152fb6b
Add version field to data requests classes 2020-10-01 15:05:31 -05:00
chimp1984
9446f2807d
Split read store and get store so it can be reused from new class (future commit)
Change API
2020-10-01 15:04:08 -05:00
chimp1984
7122ef0356
Refactoring: Rename variables 2020-10-01 15:01:33 -05:00
chimp1984
b90fd3968d
Unrelated to PR topic: Improve logs for windows: \n is not recognized and reading logs from windows users makes it harder without line breaks. 2020-10-01 15:00:32 -05:00
chimp1984
2e50e4c5d7
Add PersistableNetworkPayloadStore 2020-10-01 14:55:01 -05:00
chimp1984
fb41a1984b
Merge branch 'master_upstream' into fix-delayed-payout-tx-issues
# Conflicts:
#	core/src/main/java/bisq/core/trade/TradeManager.java
#	desktop/src/main/java/bisq/desktop/main/overlays/windows/TradeDetailsWindow.java
2020-10-01 09:24:46 -05:00
chimp1984
cfed832acd
Cleanups 2020-09-29 13:49:22 -05:00
chimp1984
3926a36c3a
Use params for trace logs. 2020-09-29 12:55:23 -05:00
chimp1984
a3c69d5be6
Remove isDebugEnabled if not needed.
Cleanup logs.

isDebugEnabled() is not recommended if params are used. It caused more performance costs and adds boilerplate code.

See:
http://logging.apache.org/log4j/1.2/manual.html
"This will not incur the cost of parameter construction if debugging is disabled. On the other hand, if the logger is debug-enabled, it will incur twice the cost of evaluating whether the logger is enabled or not: once in debugEnabled and once in debug. This is an insignificant overhead because evaluating a logger takes about 1% of the time it takes to actually log."
2020-09-29 12:47:19 -05:00
chimp1984
5a2a1d72f6
Remove toProtoNetworkEnvelope call.
'protobuf.NetworkEnvelope proto' was only used for debug logs and is expensive serialisation at each message send.
2020-09-29 12:18:08 -05:00
chimp1984
6deeecb846
Move handling of mailbox messages from TradeManager to TradeProtocol
Make removal of mailbox messages automated in TradeProtocol
2020-09-26 23:38:01 -05:00
chimp1984
f6eefef1ae
Remove handling of failed trades. If a trade is in an invalid state (tx missing) or has an error message set we show in the pending trades view a red trash icon for moving the trade to failed trades.
The info icon next to the trade ID is then a warning icon (should be red but css is not my best friend) and if opening trade details window we also color the missing txs red with a warn icon and tooltip.
When clicking the trash button a popup is displayed with detail info.
At failed trades there is a "undo" icon for reverting the trade back to pending (if user wants to open mediation, etc).

All the automatic handling of the failed trades and popups are removed as it never worked well and just confused users...

In next commits we will add more instructions what a user should/can do for diff. error cases.

TradeManger:
- Remove all the failed checks at initPendingTrade.
- Remove tradesWithoutDepositTx
- Remove tradesForStatistics as it was never read
- Remove cleanUpAddressEntries
- Rename addTradeToClosedTrades to onTradeCompleted

TxIdTextField accepts a null for tx ID and shows then red colored N/A and a warning icon.
HyperlinkWithIcon exposed the icon to be accessible for style change.
DebugWindow was updated for one variation of the trade protocol (other is missing still).
Trade detail window show now always all 4 mandatory txs.
Beside that this commit has some cleanups and null pointer fixes (when testing error scenarios i got those NP).
2020-09-24 19:47:12 -05:00
Oscar Guindzberg
423ffa84e1
bitcoinj 0.15: Futures.addCallback() in guava 28 requires an executor. 2020-09-18 18:29:27 -03:00