From c25eb80ef9fe8cf51597a97e11ad7a81b2bf5c2c Mon Sep 17 00:00:00 2001 From: Andy Coates Date: Mon, 22 Jan 2018 17:59:20 +0000 Subject: [PATCH 1/2] Expose the 'U' (first update), as well as the 'u' (final update) --- .../api/client/domain/event/DepthEvent.java | 30 ++++++++++++++++--- .../api/examples/DepthCacheExample.java | 8 ++--- 2 files changed, 30 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/binance/api/client/domain/event/DepthEvent.java b/src/main/java/com/binance/api/client/domain/event/DepthEvent.java index c868fed41..e9a4a6751 100644 --- a/src/main/java/com/binance/api/client/domain/event/DepthEvent.java +++ b/src/main/java/com/binance/api/client/domain/event/DepthEvent.java @@ -23,11 +23,14 @@ public class DepthEvent { @JsonProperty("s") private String symbol; + @JsonProperty("U") + private long firstUpdateId; + /** * updateId to sync up with updateid in /api/v1/depth */ @JsonProperty("u") - private long updateId; + private long finalUpdateId; /** * Bid depth delta. @@ -65,12 +68,30 @@ public void setSymbol(String symbol) { this.symbol = symbol; } + public long getFirstUpdateId() { + return firstUpdateId; + } + + public void setFirstUpdateId(final long firstUpdateId) { + this.firstUpdateId = firstUpdateId; + } + + public long getFinalUpdateId() { + return finalUpdateId; + } + + public void setFinalUpdateId(long finalUpdateId) { + this.finalUpdateId = finalUpdateId; + } + + @Deprecated // Use getFinalUpdateId public long getUpdateId() { - return updateId; + return finalUpdateId; } + @Deprecated // Use setFinalUpdateId public void setUpdateId(long updateId) { - this.updateId = updateId; + this.finalUpdateId = updateId; } public List getBids() { @@ -95,7 +116,8 @@ public String toString() { .append("eventType", eventType) .append("eventTime", eventTime) .append("symbol", symbol) - .append("updateId", updateId) + .append("firstUpdateId", firstUpdateId) + .append("finalUpdateId", finalUpdateId) .append("bids", bids) .append("asks", asks) .toString(); diff --git a/src/test/java/com/binance/api/examples/DepthCacheExample.java b/src/test/java/com/binance/api/examples/DepthCacheExample.java index 851d8c018..6fbbfdfa8 100644 --- a/src/test/java/com/binance/api/examples/DepthCacheExample.java +++ b/src/test/java/com/binance/api/examples/DepthCacheExample.java @@ -63,9 +63,9 @@ private void startDepthEventStreaming(String symbol) { BinanceApiWebSocketClient client = factory.newWebSocketClient(); client.onDepthEvent(symbol.toLowerCase(), response -> { - if (response.getUpdateId() > lastUpdateId) { + if (response.getFinalUpdateId() > lastUpdateId) { System.out.println(response); - lastUpdateId = response.getUpdateId(); + lastUpdateId = response.getFinalUpdateId(); updateOrderBook(getAsks(), response.getAsks()); updateOrderBook(getBids(), response.getBids()); printDepthCache(); @@ -125,9 +125,9 @@ public Map> getDepthCache() { */ private void printDepthCache() { System.out.println(depthCache); - System.out.println("ASKS:"); + System.out.println("ASKS:(" + getAsks().size() + ")"); getAsks().entrySet().forEach(entry -> System.out.println(toDepthCacheEntryString(entry))); - System.out.println("BIDS:"); + System.out.println("BIDS:(" + getBids().size() + ")"); getBids().entrySet().forEach(entry -> System.out.println(toDepthCacheEntryString(entry))); System.out.println("BEST ASK: " + toDepthCacheEntryString(getBestAsk())); System.out.println("BEST BID: " + toDepthCacheEntryString(getBestBid())); From 299411f5bee06e551d73a67b1e38168f17c22d44 Mon Sep 17 00:00:00 2001 From: Andy Coates Date: Tue, 23 Jan 2018 15:56:46 +0000 Subject: [PATCH 2/2] - added javadocs --- .../binance/api/client/domain/event/DepthEvent.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/binance/api/client/domain/event/DepthEvent.java b/src/main/java/com/binance/api/client/domain/event/DepthEvent.java index e9a4a6751..d94ff7b81 100644 --- a/src/main/java/com/binance/api/client/domain/event/DepthEvent.java +++ b/src/main/java/com/binance/api/client/domain/event/DepthEvent.java @@ -84,12 +84,18 @@ public void setFinalUpdateId(long finalUpdateId) { this.finalUpdateId = finalUpdateId; } - @Deprecated // Use getFinalUpdateId + /** + * @deprecated Use {@link #getFinalUpdateId} + */ + @Deprecated public long getUpdateId() { return finalUpdateId; } - @Deprecated // Use setFinalUpdateId + /** + * @deprecated Use {@link #setFinalUpdateId} + */ + @Deprecated public void setUpdateId(long updateId) { this.finalUpdateId = updateId; }