Commit graph

4551 commits

Author SHA1 Message Date
chimp1984
54e280c78d
Add optimized permutation algo
WIP, needs more tests, comments, clean up....
2020-04-28 00:40:41 -05:00
Chris Beams
3badf299e3
Add 'apiPort' configuration option 2020-04-27 19:49:10 +02:00
Chris Beams
82f1b66818
Refine GrpcServer log output 2020-04-27 19:49:10 +02:00
Chris Beams
a33e030e04
Rename BisqGrpcServer => GrpcServer 2020-04-27 19:49:10 +02:00
Chris Beams
2f7d0f6320
Use var declarations where appropriate 2020-04-27 19:49:09 +02:00
Chris Beams
1f8839e3ac
Make gRPC service classes non-static
So they can easily access the enclosing BisqGrpcServer#coreApi field.
2020-04-27 19:49:09 +02:00
Chris Beams
edbc81c5b4
Rename gRPC service classes from *{Impl=>Service} 2020-04-27 19:49:09 +02:00
Chris Beams
376d11dd1e
Sort static inner classes at bottom 2020-04-27 19:49:09 +02:00
Chris Beams
a52be594cb
Eliminate static fields in BisqGrpcServer 2020-04-27 19:49:09 +02:00
Chris Beams
f2028f2cef
Remove section comments from BisqGrpcServer 2020-04-27 19:49:08 +02:00
Chris Beams
01580ae36a
Remove StopServer rpc method
There is no actual requirement for this method, so removing it. It also
helps improve the implementation by removing the need for the static
'instance' field.
2020-04-27 19:49:08 +02:00
Chris Beams
20f563ae17
Reduce PasswordAuthInterceptor visibility to package-private
And remove unused @Slf4j lombok annotation
2020-04-25 13:32:40 +02:00
Chris Beams
653856f79b
Refactor 'auth*' naming to 'password'
To increase simplicity and make the implementation more
intention-revealing.
2020-04-25 13:28:10 +02:00
Chris Beams
e84123c20a
Refactor auth infrastructure naming 2020-04-25 09:52:50 +02:00
Devin Bileck
98c9664121
Add BTC node qxjrxmhyqp5vy5hj.onion
This is a newly deployed instance intended on replacing one of emzy's
nodes in an attempt to reduce the number of nodes under the control of a
single contributor.
2020-04-23 11:18:07 -07:00
Chris Beams
1a133f4b67
Use a single auth token vs username:password
There is actually no use case for both username and password forming the
authentication token. This change simplifies the arrangement such that a
single token is passed.

--rpcUser and --rpcPassword are no longer used and are replaced by
--apiToken on both cli and daemon sides.
2020-04-23 11:32:19 +02:00
Chris Beams
ca0658229b
Rename AuthenticationInterceptor => TokenAuthInterceptor 2020-04-23 11:21:52 +02:00
Chris Beams
bc88080df1
Simplify implementation of authenticate method 2020-04-23 10:20:28 +02:00
Chris Beams
864bd9a21a
Wrap method parameters according to convention 2020-04-23 10:09:06 +02:00
Chris Beams
6490e97df2
Do not declare local variables as final
Per https://github.com/bisq-network/style/issues/11
2020-04-23 10:03:36 +02:00
Chris Beams
3fba97cefc
Favor final fields declared one per line
Final fields should be favored wherever possible to advertise and
enforce immutability. Also as a matter of style, favor declaring fields
one per line instead of multiple on the same line. This style guideline
is not consistent throughout the codebase, but is favored because it
makes diffs / patches cleaner and is the more widely accepted style
througout most modern Java codebases.
2020-04-23 10:01:23 +02:00
Chris Beams
506e12da46
Inject Config directly into BisqGrpcServer
There is no need or benefit to injecting Config into CoreApi for the
purpose of accessing it indirectly through BisqGrpcServer.
2020-04-23 09:50:08 +02:00
ghubstan
fe9e57babb
Implement simple cleartext gRPC authentication
* Renamed CliCommand to RpcCommand, differentiating it from cmd
   string token(s)

 * Added new CliConfig, based on :common Config

 * Injected Config into CoreApi to make bisq.properties and cmd line
   args available to server

 * Added cleartext username:password BisqCallCredentials to :cli, and
   an AuthenticationInterceptor to :core (server)

 * Moved :daemon resources folder to expected location under src/main

 * Duplicated CompositeOptionSet, ConfigException and BisqException
   in :cli because they are not visible from :common.  (TODO refactor?)
   CompositeOptionSet will be used to let command line parameters
   override params set in config file.

 * Removed outdated references to :cli in a couple of comments in
   :common Config

 * gRPC parameters & command names are lowercase to mimic bitcoind/rpc

TBD

 * Decide what rpc auth param names to use, to differentiate them from
   bitcoind rpc user/passord param names
2020-04-22 18:16:01 -03:00
Christoph Atteneder
590f16d945
Merge pull request #4174 from devinbileck/update-btc-node
Update hostname and IP address of BTC node lva54pnbq2nsmjyr.onion
2020-04-20 11:34:50 +02:00
jmacxx
f49445ef56
Display the BSQ amount correctly in issuance log message
Fixes #3709.  The issuance log message displayed the issued BSQ
with 2 extra zeros (i.e. sats value).  This was because BSQ is
represented internally within the application as sats, so it has to
be converted by `MathUtils.scaleDownByPowerOf10(amount, 2)`
whenever displayed to the user.
2020-04-16 21:04:21 -05:00
Devin Bileck
0d6f7c3d2e
Update hostname and IP address of BTC node lva54pnbq2nsmjyr.onion
I deployed a new instance and as a result have a new IP address. Also,
while I was at it I added it to my bisq.services domain.
2020-04-15 15:47:05 -07:00
sqrrm
26f30b6ec4
Add second donation address as valid 2020-04-15 21:30:50 +02:00
Christoph Atteneder
cfc4705058
Update translations for v1.3.2 2020-04-14 18:08:27 +02:00
ghubstan
be09682435
Replace mock arg with SEPA PaymentMethod instance
Test AccountAgeWitnessServiceTest > testArbitratorSignWitness failed
in full gradle build, but passed when run as a single test:

	./gradlew :core:cleanTest :core:test \
		--tests "bisq.core.account.witness.AccountAgeWitnessServiceTest"

This test also passed when run in the IDE.

Solved by not passing a mocked PaymentMethod.SEPA argument into the
test's service.getTraderPaymentAccounts() method, where mock paymentId
field was null when running full build's test suites.

Fix for #4158
2020-04-13 11:46:35 +02:00
Christoph Atteneder
e4ae28e052
Merge pull request #4161 from ghubstan/fix-4158
Replace mock arg with SEPA PaymentMethod instance
2020-04-13 11:46:01 +02:00
sqrrm
6fc087c72c
Add option to allow faulty delay payout tx
Add more logging during unfail process
2020-04-13 11:38:15 +02:00
sqrrm
016a552836
Allow completion of trades with amount mismatch delayed tx 2020-04-13 11:38:08 +02:00
sqrrm
efee2e43c4
Init unfailed trade when moved to pending trades 2020-04-13 11:38:00 +02:00
sqrrm
e739f9465f
Don't unfail if deposit or delayedpayout txs are missing 2020-04-13 11:37:54 +02:00
sqrrm
c889fbdb8d
Reattach addresses when unfailing trade 2020-04-13 11:37:46 +02:00
sqrrm
77835b95b0
Add shortcut to move failed trade to pending trades 2020-04-13 11:32:54 +02:00
Christoph Atteneder
2a040f4687
Merge pull request #4157 from sqrrm/unfail-with-reattach
Unfail with reattach
2020-04-13 11:32:24 +02:00
sqrrm
790db8c731
Add option to allow faulty delay payout tx
Add more logging during unfail process
2020-04-12 16:12:43 +02:00
sqrrm
be3158427e
Allow completion of trades with amount mismatch delayed tx 2020-04-12 13:03:09 +02:00
ghubstan
fc458e7a7d
Replace mock arg with SEPA PaymentMethod instance
Test AccountAgeWitnessServiceTest > testArbitratorSignWitness failed
in full gradle build, but passed when run as a single test:

	./gradlew :core:cleanTest :core:test \
		--tests "bisq.core.account.witness.AccountAgeWitnessServiceTest"

This test also passed when run in the IDE.

Solved by not passing a mocked PaymentMethod.SEPA argument into the
test's service.getTraderPaymentAccounts() method, where mock paymentId
field was null when running full build's test suites.

Fix for #4158
2020-04-11 14:02:22 -03:00
sqrrm
f6b7762d26
Init unfailed trade when moved to pending trades 2020-04-11 18:02:18 +02:00
Steven Barclay
e5ed365239
Remove PersistableNetworkPayloadList & TradeStatisticsList
The former class is dead code, together with its store service, as they
were only referenced from CorePersistenceProtoResolver::fromProto, the
binding logic and from AppendOnlyDataStoreService by orphaned migration
code. However, migration from the old persisted data was completed long
ago and the store file is no longer being read or written from anywhere
in the codebase.

Also remove the associated PersistableEnvelope proto message type, along
with the TradeStatisticsList message type. The latter is long deprecated
and has no corresponding Java class implementing PersistableEnvelope, so
removing it won't change behaviour (outside the exception message thrown
when attempting to resolve it).
2020-04-11 15:07:16 +08:00
Christoph Atteneder
edc4df1826
Merge pull request #4099 from jmacxx/fix_getsupport_traderchat
Replace the Get Support button with Open Trader Chat until trade period is over
2020-04-10 19:53:38 +02:00
sqrrm
486f254773
Don't unfail if deposit or delayedpayout txs are missing 2020-04-10 16:42:02 +02:00
sqrrm
817819dc51
Reattach addresses when unfailing trade 2020-04-10 16:42:02 +02:00
sqrrm
bd8e30c708
Add shortcut to move failed trade to pending trades 2020-04-10 16:42:02 +02:00
Christoph Atteneder
34734c6fe4
Merge pull request #4122 from stejbac/make-UserThread-runAfter-thread-safe
Make UserThread::run* methods thread safe
2020-04-10 15:55:03 +02:00
sqrrm
062dc6ef76
Merge pull request #4053 from freimair/too-long-mempool-chain
Limit number of unconfirmed offers
2020-04-10 15:23:29 +02:00
sqrrm
09141eba92
Add signed witness filter (#4124)
* Add signed witness filter

- Add a filter to pubkeys used in AccountAgeWitness signing
- Fix inverted arbitrator signing of initial account age witnesses from
disputes
- Add test to verify that signed witness filter works
- Add test to verify that the arbitrator signing was fixed

* Fix codacy complaints

* Prevent NullPointerException during toggle group initialization

* Add scrollbar to filter window

* Format test class

Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
2020-04-10 15:14:01 +02:00
Elias Boukamza
963d836d05
Add blockchair mainnet and testnet explorers 2020-04-09 18:56:40 +02:00