[bisq-network/bisq] Refactor gRPC service error handling (#4960)
Stan
notifications at github.com
Wed Dec 16 17:50:15 CET 2020
This change reduces gRPC service error handling duplication by moving it to a `@Singleton CoreApiExceptionHandler `encapsulating everything needed to map an expected or unexpected core api exception to a `gRPC StatusRuntimeException` before sending it to the client. It also fixes some cases were gRPC error handling was missing.
This is the 9th in a chain of PRs beginning with https://github.com/bisq-network/bisq/pull/4884.
PR https://github.com/bisq-network/bisq/pull/4948 should be reviewed before this one.
You can view, comment on, or merge this pull request online at:
https://github.com/bisq-network/bisq/pull/4960
-- Commit Summary --
* Refactor BtcWalletService to let api override fee rates
* Merge branch 'master' into 02-refactor-completePreparedSendBsqTx
* Add optional txFeeRate parameter to api sendbsq
* Merge branch 'master' into 03-add-txFeeRate-param
* Add new api method 'sendbtc' and test
* Merge branch 'master' into 04-add-sendbtc-impl
* Support tx memo field for btc withdrawals from api
* Remove unused imports
* Merge branch 'master' into 05-use-memo-tx-field
* Use Bisq's UserThread.executor in gRPC server
* Append nullable withdrawalTxId field to Trade proto message
* Add new api method gettransaction
* Merge branch 'master' into 08-scratch
* Adjust create TransferwiseAccount test
* Disable method test to avoid repetition
* Merge branch 'master' into 09-scratch
* Add new CoreApiExceptionHandler to gRPC services
* Merge branch 'master' into 09-refactor-grpc-error-handling
-- File Changes --
M apitest/src/test/java/bisq/apitest/method/MethodTest.java (73)
M apitest/src/test/java/bisq/apitest/method/payment/CreatePaymentAccountTest.java (6)
M apitest/src/test/java/bisq/apitest/method/trade/AbstractTradeTest.java (10)
M apitest/src/test/java/bisq/apitest/method/trade/TakeSellBTCOfferTest.java (22)
M apitest/src/test/java/bisq/apitest/method/wallet/BsqWalletTest.java (2)
M apitest/src/test/java/bisq/apitest/method/wallet/BtcWalletTest.java (49)
M apitest/src/test/java/bisq/apitest/scenario/TradeTest.java (1)
M apitest/src/test/java/bisq/apitest/scenario/WalletTest.java (1)
M cli/src/main/java/bisq/cli/CliMain.java (125)
M cli/src/main/java/bisq/cli/ColumnHeaderConstants.java (10)
M cli/src/main/java/bisq/cli/TradeFormat.java (33)
A cli/src/main/java/bisq/cli/TransactionFormat.java (59)
M core/src/main/java/bisq/core/api/CoreApi.java (26)
M core/src/main/java/bisq/core/api/CoreTradesService.java (25)
M core/src/main/java/bisq/core/api/CoreWalletsService.java (126)
M core/src/main/java/bisq/core/api/model/TradeInfo.java (11)
A core/src/main/java/bisq/core/api/model/TxInfo.java (160)
M core/src/main/java/bisq/core/btc/wallet/BsqTransferService.java (5)
M core/src/main/java/bisq/core/btc/wallet/BtcWalletService.java (47)
M core/src/main/java/bisq/core/dao/governance/bond/lockup/LockupTxService.java (2)
M core/src/main/java/bisq/core/dao/governance/bond/unlock/UnlockTxService.java (2)
M core/src/main/java/bisq/core/trade/Trade.java (7)
M core/src/main/java/bisq/core/trade/TradeManager.java (1)
A daemon/src/main/java/bisq/daemon/grpc/CoreApiExceptionHandler.java (93)
M daemon/src/main/java/bisq/daemon/grpc/GrpcDisputeAgentsService.java (16)
M daemon/src/main/java/bisq/daemon/grpc/GrpcGetTradeStatisticsService.java (23)
M daemon/src/main/java/bisq/daemon/grpc/GrpcOffersService.java (48)
M daemon/src/main/java/bisq/daemon/grpc/GrpcPaymentAccountsService.java (46)
M daemon/src/main/java/bisq/daemon/grpc/GrpcPriceService.java (12)
M daemon/src/main/java/bisq/daemon/grpc/GrpcServer.java (2)
M daemon/src/main/java/bisq/daemon/grpc/GrpcTradesService.java (45)
M daemon/src/main/java/bisq/daemon/grpc/GrpcVersionService.java (14)
M daemon/src/main/java/bisq/daemon/grpc/GrpcWalletsService.java (180)
M desktop/src/main/java/bisq/desktop/main/dao/wallet/send/BsqSendView.java (4)
M proto/src/main/proto/grpc.proto (83)
M proto/src/main/proto/pb.proto (1)
-- Patch Links --
https://github.com/bisq-network/bisq/pull/4960.patch
https://github.com/bisq-network/bisq/pull/4960.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/4960
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20201216/d6331262/attachment-0001.htm>
More information about the bisq-github
mailing list