This commit is contained in:
Manfred Karrer 2015-03-26 19:21:11 +01:00
parent a9f6d8481b
commit ece3639e5f
7 changed files with 35 additions and 28 deletions

View file

@ -127,11 +127,11 @@ class PendingTradesDataModel implements Activatable, DataModel {
} }
void fiatPaymentStarted() { void fiatPaymentStarted() {
tradeManager.onFiatPaymentStarted(getTrade()); ((OffererTrade) getTrade()).onFiatPaymentStarted();
} }
void fiatPaymentReceived() { void fiatPaymentReceived() {
tradeManager.onFiatPaymentReceived(getTrade()); ((TakerTrade) getTrade()).onFiatPaymentReceived();
} }
void withdraw(String toAddress) { void withdraw(String toAddress) {

View file

@ -143,7 +143,7 @@ public class TakeOfferView extends ActivatableViewAndModel<AnchorPane, TakeOffer
acceptedCountriesTextField.setText(model.getAcceptedCountries()); acceptedCountriesTextField.setText(model.getAcceptedCountries());
acceptedLanguagesTextField.setText(model.getAcceptedLanguages()); acceptedLanguagesTextField.setText(model.getAcceptedLanguages());
acceptedArbitratorsTextField.setText(model.getAcceptedArbitratorIds()); acceptedArbitratorsTextField.setText(model.getAcceptedArbitratorIds());
showCheckAvailabilityScreen(); showCheckAvailabilityScreen();
} }

View file

@ -76,8 +76,8 @@ public class OffererTrade extends Trade implements Serializable {
private OffererProcessState processState; private OffererProcessState processState;
private OffererLifeCycleState lifeCycleState; private OffererLifeCycleState lifeCycleState;
transient private ObjectProperty<OffererProcessState> processStateProperty = new SimpleObjectProperty<>(processState); transient private ObjectProperty<OffererProcessState> processStateProperty = new SimpleObjectProperty<>();
transient private ObjectProperty<OffererLifeCycleState> lifeCycleStateProperty = new SimpleObjectProperty<>(lifeCycleState); transient private ObjectProperty<OffererLifeCycleState> lifeCycleStateProperty = new SimpleObjectProperty<>();
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////

View file

@ -79,8 +79,8 @@ public class TakerTrade extends Trade implements Serializable {
private TakerProcessState processState; private TakerProcessState processState;
private TakerLifeCycleState lifeCycleState; private TakerLifeCycleState lifeCycleState;
transient private ObjectProperty<TakerProcessState> processStateProperty = new SimpleObjectProperty<>(processState); transient private ObjectProperty<TakerProcessState> processStateProperty = new SimpleObjectProperty<>();
transient private ObjectProperty<TakerLifeCycleState> lifeCycleStateProperty = new SimpleObjectProperty<>(lifeCycleState); transient private ObjectProperty<TakerLifeCycleState> lifeCycleStateProperty = new SimpleObjectProperty<>();
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
@ -89,6 +89,7 @@ public class TakerTrade extends Trade implements Serializable {
public TakerTrade(Offer offer, Coin tradeAmount, Peer peer) { public TakerTrade(Offer offer, Coin tradeAmount, Peer peer) {
super(offer); super(offer);
this.tradeAmount = tradeAmount; this.tradeAmount = tradeAmount;
this.tradingPeer = peer; this.tradingPeer = peer;

View file

@ -38,6 +38,10 @@ import javafx.beans.property.SimpleObjectProperty;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
/**
* Holds all data which are relevant to the trade, but not those which are only needed in the trade process as shared data between tasks. Those data are
* stored in the task model.
*/
abstract public class Trade implements Serializable { abstract public class Trade implements Serializable {
// That object is saved to disc. We need to take care of changes to not break deserialization. // That object is saved to disc. We need to take care of changes to not break deserialization.
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ -128,10 +132,6 @@ abstract public class Trade implements Serializable {
this.offererContractSignature = offererContractSignature; this.offererContractSignature = offererContractSignature;
} }
public Contract getContract() {
return contract;
}
public void setContractAsJson(String contractAsJson) { public void setContractAsJson(String contractAsJson) {
this.contractAsJson = contractAsJson; this.contractAsJson = contractAsJson;
} }
@ -173,6 +173,10 @@ abstract public class Trade implements Serializable {
return payoutTx; return payoutTx;
} }
public Contract getContract() {
return contract;
}
public Coin getSecurityDeposit() { public Coin getSecurityDeposit() {
return offer.getSecurityDeposit(); return offer.getSecurityDeposit();
} }
@ -193,14 +197,6 @@ abstract public class Trade implements Serializable {
return date; return date;
} }
public ReadOnlyObjectProperty<Coin> tradeAmountProperty() {
return tradeAmountProperty;
}
public ReadOnlyObjectProperty<Fiat> tradeVolumeProperty() {
return tradeVolumeProperty;
}
public String getErrorMessage() { public String getErrorMessage() {
return errorMessage; return errorMessage;
} }
@ -209,6 +205,14 @@ abstract public class Trade implements Serializable {
return throwable; return throwable;
} }
public ReadOnlyObjectProperty<Coin> tradeAmountProperty() {
return tradeAmountProperty;
}
public ReadOnlyObjectProperty<Fiat> tradeVolumeProperty() {
return tradeVolumeProperty;
}
public abstract ReadOnlyObjectProperty<? extends ProcessState> processStateProperty(); public abstract ReadOnlyObjectProperty<? extends ProcessState> processStateProperty();
public abstract ReadOnlyObjectProperty<? extends LifeCycleState> lifeCycleStateProperty(); public abstract ReadOnlyObjectProperty<? extends LifeCycleState> lifeCycleStateProperty();
@ -219,7 +223,6 @@ abstract public class Trade implements Serializable {
public abstract Peer getTradingPeer(); public abstract Peer getTradingPeer();
protected abstract void setConfidenceListener();
@Override @Override
public String toString() { public String toString() {
@ -237,4 +240,12 @@ abstract public class Trade implements Serializable {
", depthInBlocks=" + depthInBlocks + ", depthInBlocks=" + depthInBlocks +
'}'; '}';
} }
///////////////////////////////////////////////////////////////////////////////////////////
// Protected
///////////////////////////////////////////////////////////////////////////////////////////
protected abstract void setConfidenceListener();
} }

View file

@ -291,14 +291,6 @@ public class TradeManager {
// Trade // Trade
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////
public void onFiatPaymentStarted(Trade trade) {
((OffererTrade) trade).onFiatPaymentStarted();
}
public void onFiatPaymentReceived(Trade trade) {
((TakerTrade) trade).onFiatPaymentReceived();
}
public void requestWithdraw(String toAddress, Trade trade, ResultHandler resultHandler, FaultHandler faultHandler) { public void requestWithdraw(String toAddress, Trade trade, ResultHandler resultHandler, FaultHandler faultHandler) {
AddressEntry addressEntry = walletService.getAddressEntry(trade.getId()); AddressEntry addressEntry = walletService.getAddressEntry(trade.getId());
String fromAddress = addressEntry.getAddressString(); String fromAddress = addressEntry.getAddressString();

View file

@ -36,6 +36,9 @@ import java.io.Serializable;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
/**
* Holds all data which are needed between tasks. All relevant data for the trade itself are stored in Trade.
*/
public class TakerAsSellerModel extends SharedTradeModel implements Serializable { public class TakerAsSellerModel extends SharedTradeModel implements Serializable {
// That object is saved to disc. We need to take care of changes to not break deserialization. // That object is saved to disc. We need to take care of changes to not break deserialization.
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;