diff --git a/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersDataModel.java b/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersDataModel.java index 000d495a35..739b4897a6 100644 --- a/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersDataModel.java +++ b/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersDataModel.java @@ -21,6 +21,8 @@ import io.bitsquare.offer.Direction; import io.bitsquare.offer.Offer; import io.bitsquare.trade.TradeManager; import io.bitsquare.user.User; +import io.bitsquare.util.task.FaultHandler; +import io.bitsquare.util.task.ResultHandler; import com.google.inject.Inject; @@ -33,7 +35,11 @@ import javafx.collections.FXCollections; import javafx.collections.MapChangeListener; import javafx.collections.ObservableList; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + class OffersDataModel implements Activatable, DataModel { + private static final Logger log = LoggerFactory.getLogger(OffersDataModel.class); private final TradeManager tradeManager; private final User user; @@ -71,8 +77,8 @@ class OffersDataModel implements Activatable, DataModel { tradeManager.getOffers().removeListener(offerMapChangeListener); } - void removeOffer(OfferListItem item) { - tradeManager.requestRemoveOffer(item.getOffer()); + void removeOffer(Offer offer, ResultHandler resultHandler, FaultHandler faultHandler) { + tradeManager.requestRemoveOffer(offer, resultHandler, faultHandler); } diff --git a/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersViewModel.java b/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersViewModel.java index 23cd3ada35..b45e42b748 100644 --- a/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersViewModel.java +++ b/gui/src/main/java/io/bitsquare/gui/main/portfolio/offer/OffersViewModel.java @@ -17,6 +17,7 @@ package io.bitsquare.gui.main.portfolio.offer; +import io.bitsquare.gui.components.Popups; import io.bitsquare.gui.util.BSFormatter; import com.google.inject.Inject; @@ -26,7 +27,11 @@ import viewfx.model.support.ActivatableWithDataModel; import javafx.collections.ObservableList; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + class OffersViewModel extends ActivatableWithDataModel implements ViewModel { + private static final Logger log = LoggerFactory.getLogger(OffersViewModel.class); private final BSFormatter formatter; @@ -40,10 +45,17 @@ class OffersViewModel extends ActivatableWithDataModel implemen void removeOffer(OfferListItem item) { - dataModel.removeOffer(item); + dataModel.removeOffer(item.getOffer(), + () -> { + // visual feedback? + log.debug("Remove offer was successful"); + }, + (message, throwable) -> { + log.error(message); + Popups.openWarningPopup("Remove offer failed", message); + }); } - public ObservableList getList() { return dataModel.getList(); } diff --git a/gui/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookViewModel.java b/gui/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookViewModel.java index 87fb9d5c9d..40b3b9514c 100644 --- a/gui/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookViewModel.java +++ b/gui/src/main/java/io/bitsquare/gui/main/trade/offerbook/OfferBookViewModel.java @@ -107,7 +107,7 @@ class OfferBookViewModel extends ActivatableWithDataModel im dataModel.removeOffer(offer, () -> { // visual feedback? - log.debug("remove was successful"); + log.debug("Remove offer was successful"); }, (message, throwable) -> { log.error(message); diff --git a/gui/src/main/java/io/bitsquare/trade/TradeManager.java b/gui/src/main/java/io/bitsquare/trade/TradeManager.java index b901fb1b50..67157d01d8 100644 --- a/gui/src/main/java/io/bitsquare/trade/TradeManager.java +++ b/gui/src/main/java/io/bitsquare/trade/TradeManager.java @@ -256,7 +256,9 @@ public class TradeManager { public void onOfferAccepted(Offer offer) { trade.setState(Trade.State.OFFERER_ACCEPTED); persistPendingTrades(); - requestRemoveOffer(offer); + requestRemoveOffer(offer, + () -> log.debug("remove was successful"), + (message, throwable) -> log.error(message)); } @Override