
estonlabs.cxtl.exchanges.gateio.api.v4.domain.OrderBook Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cxtl Show documentation
Show all versions of cxtl Show documentation
CXTL – Crypto eXchange Trading Library
The newest version!
package estonlabs.cxtl.exchanges.gateio.api.v4.domain;
import com.fasterxml.jackson.annotation.JsonAlias;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import estonlabs.cxtl.common.stream.managed.MarketData;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@JsonIgnoreProperties(ignoreUnknown = true)
public class OrderBook extends StreamMessage implements MarketData {
@JsonProperty("current")
private Long currentTimestampMs;
@JsonProperty("update")
private Long updateTimestampMs;
@Override
public MessageType getMessageType() {
return MessageType.DATA;
}
@Override
public boolean isSnapshot() {
return false;
}
@Override
public String getTopic() {
return getChannel();
}
@Override
public Long getSeqNo() {
return null;
}
@Override
public Long getTimestamp() {
return getTimeMS();
}
@Override
public boolean hasData() {
return true;
}
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public static class OrderBookUpdateResult {
@JsonProperty("t")
private Long timestampMs;
@JsonProperty("s")
private String symbol;
@JsonProperty("U")
private Long firstUpdateID;
@JsonProperty("u")
private Long lastUpdateID;
@JsonDeserialize(using = PriceLevelDeserializer.class)
@JsonProperty("b")
@JsonAlias("bids")
private List bids;
@JsonDeserialize(using = PriceLevelDeserializer.class)
@JsonProperty("a")
@JsonAlias("asks")
private List asks;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy