From 9e6054ca0612a05ec2b698b8a63db7605c600725 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Fri, 05 Mar 2021 14:51:08 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/quartz/job/NewestPriceUpdateJob.java | 61 +++++++++++++++++------------- 1 files changed, 34 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/xcong/excoin/quartz/job/NewestPriceUpdateJob.java b/src/main/java/com/xcong/excoin/quartz/job/NewestPriceUpdateJob.java index fd6ee96..735b99b 100644 --- a/src/main/java/com/xcong/excoin/quartz/job/NewestPriceUpdateJob.java +++ b/src/main/java/com/xcong/excoin/quartz/job/NewestPriceUpdateJob.java @@ -1,14 +1,16 @@ package com.xcong.excoin.quartz.job; +import com.alibaba.fastjson.JSONObject; import com.huobi.client.SubscriptionClient; -import com.huobi.client.SubscriptionOptions; -import com.huobi.client.model.Candlestick; -import com.huobi.client.model.enums.CandlestickInterval; import com.xcong.excoin.modules.symbols.service.SymbolsService; -import com.xcong.excoin.utils.CoinTypeConvert; +import com.xcong.excoin.netty.common.ServerChannelManager; +import com.xcong.excoin.netty.common.NettyTools; +import com.xcong.excoin.rabbit.pricequeue.WebsocketPriceService; import com.xcong.excoin.utils.RedisUtils; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; @@ -31,35 +33,40 @@ @Resource private SymbolsService symbolsService; - @PostConstruct + @Resource + private WebsocketPriceService websocketPriceService; + + @Autowired + private RedisTemplate redisTemplate; + + @Autowired + private SubscriptionClient subscriptionClient; + +// @PostConstruct public void initNewestPrice() { log.info("#=======价格更新开启=======#"); - SubscriptionOptions subscriptionOptions = new SubscriptionOptions(); - subscriptionOptions.setConnectionDelayOnFailure(5); - subscriptionOptions.setUri("wss://api.hadax.com/ws"); - SubscriptionClient subscriptionClient = SubscriptionClient.create("", "", subscriptionOptions); + subscriptionClient.subscribeTradeEvent("btcusdt,ethusdt,xrpusdt,ltcusdt,bchusdt,eosusdt,etcusdt", tradeEvent -> { - String symbol = tradeEvent.getSymbol(); - // 根据symbol判断做什么操作 - symbol = CoinTypeConvert.convert(symbol); - if (null != symbol) { - String price = tradeEvent.getTradeList().get(0).getPrice().toPlainString(); - // TODO 测试环境关闭这个插入redis - redisUtils.set(CoinTypeConvert.convertToKey(symbol), price); - // 比较 + ServerChannelManager.getTcpGroup().writeAndFlush(NettyTools.textBytes(JSONObject.toJSONString(tradeEvent))); +// String symbol = tradeEvent.getSymbol(); +// // 根据symbol判断做什么操作 +// symbol = CoinTypeConvert.convert(symbol); +// if (null != symbol) { +// String price = tradeEvent.getTradeList().get(0).getPrice().toPlainString(); +// // TODO 测试环境关闭这个插入redis +// redisUtils.set(CoinTypeConvert.convertToKey(symbol), price); +// // 比较 // websocketPriceService.comparePriceAsc(symbol, price); // websocketPriceService.comparePriceDesc(symbol, price); - //System.out.println("比较完毕:"+symbol+"-"+price); - - } +// websocketPriceService.wholeBomb(); +// //System.out.println("比较完毕:"+symbol+"-"+price); +// +// } }); - - - subscriptionClient.subscribeCandlestickEvent("btcusdt,ethusdt,eosusdt,etcusdt,ltcusdt,bchusdt,xrpusdt", CandlestickInterval.DAY1, (candlestickEvent) -> { - Candlestick data = candlestickEvent.getData(); - redisUtils.set(CoinTypeConvert.convert(candlestickEvent.getSymbol()), data); - }); - +// subscriptionClient.subscribeCandlestickEvent("btcusdt,ethusdt,eosusdt,etcusdt,ltcusdt,bchusdt,xrpusdt", CandlestickInterval.DAY1, (candlestickEvent) -> { +// Candlestick data = candlestickEvent.getData(); +// redisUtils.set(CoinTypeConvert.convert(candlestickEvent.getSymbol()), data); +// }); } } -- Gitblit v1.9.1