set offer trigger price and state from open offer

This commit is contained in:
woodser 2022-05-23 18:24:10 -04:00
parent e33d93eee8
commit ca9bdf7c29
5 changed files with 23 additions and 19 deletions

View file

@ -18,7 +18,7 @@
package bisq.core.api.model;
import bisq.core.offer.Offer;
import bisq.core.offer.OpenOffer;
import bisq.common.Payload;
import bisq.common.proto.ProtoUtil;
import java.util.Objects;
@ -94,10 +94,13 @@ public class OfferInfo implements Payload {
return getOfferInfoBuilder(offer).build();
}
public static OfferInfo toOfferInfo(Offer offer, long triggerPrice) {
// The Offer does not have a triggerPrice attribute, so we get
// the base OfferInfoBuilder, then add the OpenOffer's triggerPrice.
return getOfferInfoBuilder(offer).withTriggerPrice(triggerPrice).build();
public static OfferInfo toOfferInfo(Offer offer, OpenOffer openOffer) {
OfferInfoBuilder builder = getOfferInfoBuilder(offer);
if (openOffer != null) {
builder.withState(openOffer.getState().name());
builder.withTriggerPrice(openOffer.getTriggerPrice());
}
return builder.build();
}
private static OfferInfoBuilder getOfferInfoBuilder(Offer offer) {

View file

@ -82,7 +82,6 @@ public class Offer implements NetworkPayload, PersistablePayload {
public enum State {
UNKNOWN,
SCHEDULED,
OFFER_FEE_RESERVED,
AVAILABLE,
NOT_AVAILABLE,

View file

@ -696,7 +696,7 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
// schedule txs
openOffer.setScheduledTxHashes(scheduledTxHashes);
openOffer.setScheduledAmount(scheduledAmount.toString());
openOffer.getOffer().setState(Offer.State.SCHEDULED);
openOffer.setState(OpenOffer.State.SCHEDULED);
}
// handle result