Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement api methods 'keepfunds', 'withdrawfunds' #4711

Merged
merged 17 commits into from
Oct 31, 2020

Conversation

ghubstan
Copy link
Member

The CoreTradesService was also refactored to work with the api methods implemented in this PR:

  • keepfunds -- Close trade, keep funds in Bisq wallet

  • withdrawfunds -- Close trade, withdraw funds to external BTC wallet

A getKey accessor was added to CoreWalletsService (needed by withdrawfunds impl).

PR #4709 should be reviewed & merged before this PR.

The API is going to need some desktop trade utilities, which should be
shared between :desktop and :core.api.
Scope of this refactoring is small;  more can be done, but the short
term goal is to share trade util logic with core api.

- Removed unused method getCurrencyCode()
- Made minor style changes
- Removed duplicated code block
API users will need to see their role as maker/taker when looking at trade details.

- Add getRole(trade) to TradeUtil.
- Add getTradeRole(tradeId) to CoreApi, CoreTradesService.
- Add role field to TradeInfo proto and its wrapper class.
- Move output column header specs to its own shared constants class.

- Add new TradeFormat class for printing trade details in the console.

- Print formatted trade in api trade tests -- to see output before
  using formatter in CLI (in next PR).
Optionally print the json contract for a given trade id.
This PR adds trade closing method stubs to keep funds in the
Bisq wallet or send them to an external BTC wallet.

- Add grpc protos
- Add new methods to GrpcTradesService, CoreApi
- Stub out implementations in CoreTradesService
- Add methods to CLI
The CoreTradesService was refactored to work for newly added api methods:

- keepfunds -- close trade, keep funds in bisq wallet

- withdrawfunds -- close trade, withdraw funds to external btc wallet

A getKey accessor was added to CoreWalletsService (needed by withdrawfunds impl).
Copy link
Member

@sqrrm sqrrm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK

A comment to tend to in a later PR

The usage of the wallet and the key might have to be refactored for safer key handling, but I think that should be done as a focused refactoring.

@sqrrm sqrrm merged commit f3c62d3 into bisq-network:master Oct 31, 2020
ghubstan added a commit to ghubstan/bisq that referenced this pull request Oct 31, 2020
@ghubstan ghubstan deleted the 10-closetrade-impls branch November 2, 2020 15:08
@ripcurlx ripcurlx added this to the v1.5.0 milestone Nov 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants