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

Add 'takeoffer' API method #4673

Merged
merged 2 commits into from
Oct 22, 2020
Merged

Add 'takeoffer' API method #4673

merged 2 commits into from
Oct 22, 2020

Commits on Oct 20, 2020

  1. Refactor offer/trade related classes in core and desktop

    These refactoring changes are for reducing existing and potential
    duplication coming with the addition of new trading protocol support
    in the gRPC API.  Some minor styling and logic simplification changes
    are also include.
    
    - Convert OfferUtil to injected singleton, and move various offer related
      utility methods into it.
    
    - Delete both MakerFeeProvider classes, which were wrappers around the same
      static old OfferUtil method.
    
    - Inject OfferUtil into CreateOfferDataModel, CreateOfferViewModel,
      TakeOfferDataModel, TakeOfferViewModel, MutableOfferDataModel,
      MutableOfferViewModel, OfferDataModel, EditOfferDataModel,
      EditOfferViewModel
    
    - Refactor TakeOfferViewModel
    
    	Use OfferUtil, remove unused fields & methods.
    	Made minor logic simplification, style and formatting changes.
    
    - MutableOfferDataModel
    
    	Made minor logic simplification, style and formatting changes.
    
    - MutableOfferView uses new paymentAccount.isHalCashAccount().
    
    - MutableOfferViewModel
    
    	Refactored to use new VolumeUtil, CoinUtil, OfferUtil.
    	Removed unused fields & accessors.
    	Made minor style change.
    
    - Refactored OfferDataModel to use new OfferUtil
    
    - Refactor CreateOfferService
    
    	Inject and use OfferUtil
    	Move some utility methods to OfferUtil
    	Remove unused fields
    
    - Offer
    
    	Refactored to use new VolumeUtil for volume calculations.
    	Made stateProperty and errorMessageProperty fields private.
    
    - PaymentAccount
    
    	Moved isHalCashAccount type check to this class.
    	Moved getTradeCurrency logic to this class.
    
    - Contract, radeStatistics2, TradeStatistics3
    
    	Refactored to use new VolumeUtil for volume calculations.
    
    - Trade
    
    	Refactored to use new VolumeUtil for volume calculations.
    	Made minor logic simplification, style and formatting changes.
    
    - CoinUtil
    
    	Moved some coin utility methods into this class
    
    - CoinUtilTest
    
    	Moved (coin related) tests from CoinCryptoUtilsTest and OfferUtilTest
    	into CoinUtilTest, and deleted OfferUtilTest, CoinCryptoUtilsTest.
    
    - Adjust create and edit offer tests to model refactoring
    ghubstan committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    ab6be23 View commit details
    Browse the repository at this point in the history
  2. Add 'takeoffer' API method

    - Add new core.offer.takeoffer.TakeOfferModel
    
    	Would have been nice to move more logic from
    	bisq.desktop.main.offer.takeoffer.TakeOfferDataModel,
    	but it has JFX dependencies that cannot be use in :core.
    
    - Add grpc protos to support takeoffer, confirmpaymentsent, confirmpaymentreceived
    
    	Only takeoffer is implemented in this commit.
    
    - Refactor OfferInfo grpc proto wrapper, and add offer state field
    
    - Add new TradeInfo grpc proto wrapper
    
    - Implement takeoffer on server and cli side
    
    - Refactor offer/trade tests, add test cases
    ghubstan committed Oct 20, 2020
    Configuration menu
    Copy the full SHA
    e809af3 View commit details
    Browse the repository at this point in the history