* If Tor *.onion hostname, use HTTP with Tor proxy
* If 127.0.0.1 or localhost, use HTTP without Tor proxy
* If LAN address or *.local FQDN, use HTTP without Tor proxy
* If any other FQDN hostname, use HTTPS with Tor proxy
The p2pNetworkAndWalletReady MonadicBinding might be removed from GC
if its a local variable. I observed that in BisqSetup with a similar
setup. It might be an implementation weakness in MonadicBinding
(usage of weak references?). A tester reported that he does not see any
result, which might be cause that the service never gets the
onP2pNetworkAndWalletReady triggered if the MonadicBinding is not there
anymore.
By removing the listener we need at shutdown we need it anyway as class
field (so codacy does not complain anymore). As well added a check if
all is already complete to skip the MonadicBinding at all
(not expected case in onAllServicesInitialized).
at restore from seed and create a backup copy.
I don't know what was the motivation of removing the original file
(probably the use case that the seeds are different and thus there
is no match of existing entries with the new addresses) as
that breaks the internal association of addresses with trades/offers and
the reserved balances display.
This should be tested well though with the related use cases
(diff. offer and trade states, wallet restore with same seed of with
foreign seed -> in that case we need to recreated the AddressEntryList
but that should be handled in the related domain)
- Add copyFile method
- Make entrySet final
- Avoind unneeded wrapping
- Remove visibility of entrySet
- Add getAddressEntriesAsListImmutable method. This is the only access for the hashSet
so we ensure it cannot be changed from outside.
- Remove stream() method
- Remove unused return types
- Improve some stream structures
- Renaming, improve comments
In dev testing I got the case of duplicated address entries and thus
incorrect balance. I could not reproduce it later but looking in the
AddressEntry code it was unsafe using the add operation on list without
a contains check. Better instead to use a HashSet and avoid possibility
of duplicated entries by the chosen data structure.
Note that the protobuf representation is still a list and get converted
to a HashSet.
dispute has been opened. This will cause a Runtime exception but that
is justified as the caller need to ensure to do the check and do not
allow to get to that point.
* If Tor *.onion hostname, use HTTP with Tor proxy
* If 127.0.0.1 or localhost, use HTTP without Tor proxy
* If LAN address or *.local FQDN, use HTTP without Tor proxy
* If any other FQDN hostname, use HTTPS with Tor proxy