Skip to content

Commit e8beb1c

Browse files
fix: query expiration moment set in seconds rather than milliseconds (the way it is required by BitMEX).
Expiration moment logged to console every time a query is send.
1 parent 003bdbd commit e8beb1c

3 files changed

Lines changed: 11 additions & 2 deletions

File tree

bitmex-adapter/src/com/bookmap/plugins/layer0/bitmex/adapter/BmConnector.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,9 @@ public String wssAuthTwo() {
119119
String orderApiKey = tradeConnector.getOrderApiKey();
120120
String orderApiSecret = tradeConnector.getOrderApiSecret();
121121
long moment = ConnectorUtils.getMomentAndTimeToLive();
122+
123+
Log.info("[bitmex] BmConnector wssAuthTwo() moment = " + moment);
124+
122125
String res = null;
123126
String messageBody = ConnectorUtils.createMessageBody(method, subPath, null, moment);
124127
String signature = ConnectorUtils.generateSignature(orderApiSecret, messageBody);

bitmex-adapter/src/com/bookmap/plugins/layer0/bitmex/adapter/ConnectorUtils.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class ConnectorUtils {
3737
+ " so the data you see\ndoes not match the actual data in the live environment."
3838
+ "\nPlease uncheck \"This is a demo account\" to connect to the live data";
3939

40-
public static final long REQUEST_TIME_TO_LIVE = TimeUnit.MILLISECONDS.convert(1, TimeUnit.DAYS);// 24h
40+
public static final long REQUEST_TIME_TO_LIVE = TimeUnit.SECONDS.convert(1, TimeUnit.HOURS);// 1 hour
4141

4242
public static enum WebSocketOperation {
4343
AUTHKEY, SUBSCRIBE, UNSUBSCRIBE;
@@ -139,7 +139,7 @@ public static String longToTransactTime(long moment) {
139139
}
140140

141141
public static long getMomentAndTimeToLive() {
142-
return System.currentTimeMillis() + ConnectorUtils.REQUEST_TIME_TO_LIVE;
142+
return Instant.now().getEpochSecond() + REQUEST_TIME_TO_LIVE;
143143
}
144144

145145
public static String hash256(String data) throws NoSuchAlgorithmException {

bitmex-adapter/src/com/bookmap/plugins/layer0/bitmex/adapter/TradeConnector.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ public void setOrderApiSecret(String orderApiSecret) {
5353
public String makeRestGetQuery(String address) {
5454
String addr = address;
5555
long moment = ConnectorUtils.getMomentAndTimeToLive();
56+
57+
Log.info("[bitmex] TradeConnector makeRestGetQuery(xx) moment = " + moment);
58+
5659
String messageBody = ConnectorUtils.createMessageBody("GET", addr, "",
5760
moment);
5861
String signature = ConnectorUtils.generateSignature(orderApiSecret, messageBody);
@@ -236,6 +239,9 @@ public String require(GeneralType genType, Method method, String data, boolean i
236239
String subPath = ConnectorUtils.subPaths.get(genType);
237240
String path = provider.getConnector().getRestApi() + subPath;
238241
long moment = ConnectorUtils.getMomentAndTimeToLive();
242+
243+
Log.info("[bitmex] TradeConnector makeRestGetQuery(xx) moment = " + moment);
244+
239245
Log.info("[bitmex] TradeConnector require: sending data => " + data);
240246

241247
try {

0 commit comments

Comments
 (0)