[bisq-network/bisq] Refactor offer/trade related classes in core and desktop (#4672)

Stan notifications at github.com
Tue Oct 20 18:13:55 UTC 2020


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 included.

- 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

You can view, comment on, or merge this pull request online at:

  https://github.com/bisq-network/bisq/pull/4672

-- Commit Summary --

  * Refactor offer/trade related classes in core and desktop

-- File Changes --

    M core/src/main/java/bisq/core/offer/CreateOfferService.java (84)
    D core/src/main/java/bisq/core/offer/MakerFeeProvider.java (29)
    M core/src/main/java/bisq/core/offer/Offer.java (9)
    M core/src/main/java/bisq/core/offer/OfferUtil.java (408)
    M core/src/main/java/bisq/core/payment/PaymentAccount.java (27)
    M core/src/main/java/bisq/core/trade/Contract.java (6)
    M core/src/main/java/bisq/core/trade/Trade.java (34)
    M core/src/main/java/bisq/core/trade/statistics/TradeStatistics2.java (4)
    M core/src/main/java/bisq/core/trade/statistics/TradeStatistics3.java (4)
    A core/src/main/java/bisq/core/util/VolumeUtil.java (50)
    M core/src/main/java/bisq/core/util/coin/CoinUtil.java (109)
    D core/src/test/java/bisq/core/util/CoinCryptoUtilsTest.java (60)
    R core/src/test/java/bisq/core/util/coin/CoinUtilTest.java (56)
    D desktop/src/main/java/bisq/desktop/main/offer/MakerFeeProvider.java (13)
    M desktop/src/main/java/bisq/desktop/main/offer/MutableOfferDataModel.java (88)
    M desktop/src/main/java/bisq/desktop/main/offer/MutableOfferView.java (2)
    M desktop/src/main/java/bisq/desktop/main/offer/MutableOfferViewModel.java (61)
    M desktop/src/main/java/bisq/desktop/main/offer/OfferDataModel.java (31)
    M desktop/src/main/java/bisq/desktop/main/offer/createoffer/CreateOfferDataModel.java (6)
    M desktop/src/main/java/bisq/desktop/main/offer/createoffer/CreateOfferViewModel.java (8)
    M desktop/src/main/java/bisq/desktop/main/offer/takeoffer/TakeOfferDataModel.java (21)
    M desktop/src/main/java/bisq/desktop/main/offer/takeoffer/TakeOfferViewModel.java (60)
    M desktop/src/main/java/bisq/desktop/main/portfolio/editoffer/EditOfferDataModel.java (7)
    M desktop/src/main/java/bisq/desktop/main/portfolio/editoffer/EditOfferViewModel.java (8)
    M desktop/src/test/java/bisq/desktop/main/offer/createoffer/CreateOfferDataModelTest.java (36)
    M desktop/src/test/java/bisq/desktop/main/offer/createoffer/CreateOfferViewModelTest.java (51)
    M desktop/src/test/java/bisq/desktop/main/portfolio/editoffer/EditOfferDataModelTest.java (29)

-- Patch Links --

https://github.com/bisq-network/bisq/pull/4672.patch
https://github.com/bisq-network/bisq/pull/4672.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/4672
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20201020/a386a547/attachment-0001.html>


More information about the bisq-github mailing list