From 3b51e28456fc8c3ca03a27df70645b82c1a1530b Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 08 Sep 2020 18:00:30 +0800 Subject: [PATCH] modify --- src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java | 277 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 276 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java b/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java index eec7531..bc850b9 100644 --- a/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java +++ b/src/main/java/com/xcong/excoin/configurations/RabbitMqConfig.java @@ -21,11 +21,68 @@ @Configuration public class RabbitMqConfig { - public static final String EXCHANGE_ONE = "excoin-exchange-one"; + public static final String EXCHANGE_ONE = "biue-exchange-one"; public static final String QUEUE_TEST = "test-queue"; public static final String ROUTING_KEY_TEST = "test-routingKey"; + + public static final String EXCHANGE_A = "biue-exchange-A"; + + + // 开多止盈队列 + public static final String QUEUE_MOREPRO = "QUEUE_MOREPRO_NEW"; + // 开空止盈队列 + public static final String QUEUE_LESSPRO = "QUEUE_LESSPRO_NEW"; + // 开多止损队列 + public static final String QUEUE_MORELOSS = "QUEUE_MORELOSS_NEW"; + // 开空止损队列 + public static final String QUEUE_LESSLOSS = "QUEUE_LESSLOSS_NEW"; + + // 限价委托 + public static final String QUEUE_LIMIT = "QUEUE_LIMIT_NEW"; + + // 委托平仓 + public static final String QUEUE_LIMIT_CLOSE = "QUEUE_LIMIT_CLOSE_NEW"; + + // 爆仓队列 + public static final String QUEUE_COINOUT = "QUEUE_COINOUT_NEW"; + + //价格操作 + public static final String QUEUE_PRICEOPERATE = "QUEUE_PRICEOPERATE_NEW"; + + // 平仓队列 + public static final String QUEUE_CLOSETRADE = "QUEUE_CLOSETRADE_NEW"; + + // 全仓爆仓 + public static final String QUEUE_WHOLE_BOMB = "QUEUE_WHOLE_BOMB_NEW"; + + + // 开多止盈路由键 + public static final String ROUTINGKEY_MOREPRO = "ROUTINGKEY_MOREPRO"; + // 开空止盈路由 + public static final String ROUTINGKEY_LESSPRO = "ROUTINGKEY_LESSPRO"; + // 开多止损路由 + public static final String ROUTINGKEY_MORELOSS = "ROUTINGKEY_MORELOSS"; + // 开空止损路由 + public static final String ROUTINGKEY_LESSLOSS = "ROUTINGKEY_LESSLOSS"; + // 限价委托 + public static final String ROUTINGKEY_LIMIT = "ROUTINGKEY_LIMIT"; + + // 爆仓路由 + public static final String ROUTINGKEY_COINOUT = "ROUTINGKEY_COINOUT"; + + + // 价格操作 + public static final String ROUTINGKEY_PRICEOPERATE = "ROUTINGKEY_PRICEOPERATE"; + // 平仓路由 + public static final String ROUTINGKEY_CLOSETRADE = "ROUTINGKEY_CLOSETRADE"; + + // 委托平仓 + public static final String ROUTINGKEY_LIMIT_CLOSE = "ROUTINGKEY_LIMIT_CLOSE"; + + // 全仓爆仓 + public static final String ROUTINGKEY_WHOLE_BOMB = "ROUTINGKEY_WHOLE_BOMB"; @Resource private ConnectionFactory connectionFactory; @@ -60,4 +117,222 @@ return BindingBuilder.bind(testQueue()).to(defaultExchange()).with(ROUTING_KEY_TEST); } + + /** + * 交换器A 可以继续添加交换器B C + * + * @return + */ + @Bean + public DirectExchange orderExchange() { + return new DirectExchange(EXCHANGE_A); + } + + + /** + * 开多止盈队列 + * + * @return + */ + @Bean + public Queue queueMorePro() { + // 定义一个名称为QUEUE_A,持久化的队列 + return new Queue(QUEUE_MOREPRO, true); + } + + /** + * 开空止盈队列 + * + * @return + */ + @Bean + public Queue queueLessPro() { + // 定义一个名称为QUEUE_A,持久化的队列 + return new Queue(QUEUE_LESSPRO, true); + } + + /** + * 开多止损 + * + * @return + */ + @Bean + public Queue queueMoreLoss() { + // 定义一个名称为QUEUE_A,持久化的队列 + return new Queue(QUEUE_MORELOSS, true); + } + + /** + * 开空止损 + * + * @return + */ + @Bean + public Queue queueLessLoss() { + // 定义一个名称为QUEUE_A,持久化的队列 + return new Queue(QUEUE_LESSLOSS, true); + } + + /** + * 限价委托 + * + * @return + */ + @Bean + public Queue queueLimit() { + return new Queue(QUEUE_LIMIT, true); + } + + /** + * 委托平仓 + * + * @return + */ + @Bean + public Queue queueLimitClose() { + return new Queue(QUEUE_LIMIT_CLOSE, true); + } + + + /** + * 爆仓 + * + * @return + */ + @Bean + public Queue queueCoinout() { + return new Queue(QUEUE_COINOUT, true); + } + + /** + * 价格操作 + * + * @return + */ + @Bean + public Queue queuePriceoperate() { + return new Queue(QUEUE_PRICEOPERATE, true); + } + + /** + * 价格操作 + * + * @return + */ + @Bean + public Queue queueCloseTrade() { + return new Queue(QUEUE_CLOSETRADE, true); + } + + /** + * 全仓爆仓 + * @return + */ + @Bean + public Queue queueWholeBomb() { + return new Queue(QUEUE_WHOLE_BOMB, true); + } + + /** + * 开多止盈 + * + * @return + */ + @Bean + public Binding bindingMroPro() { + return BindingBuilder.bind(queueMorePro()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_MOREPRO); + } + + /** + * 开空止盈 + * + * @return + */ + @Bean + public Binding bindingLessPro() { + return BindingBuilder.bind(queueLessPro()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_LESSPRO); + } + + /** + * 开多止损 + * + * @return + */ + @Bean + public Binding bindingMroLoss() { + return BindingBuilder.bind(queueMoreLoss()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_MORELOSS); + } + + /** + * 开空止损 + * + * @return + */ + @Bean + public Binding bindingLessLoss() { + return BindingBuilder.bind(queueLessLoss()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_LESSLOSS); + } + + + /** + * 委托 + * + * @return + */ + @Bean + public Binding bindingLimit() { + return BindingBuilder.bind(queueLimit()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_LIMIT); + } + + /** + * 委托平仓 + * + * @return + */ + @Bean + public Binding bindingLimitClose() { + return BindingBuilder.bind(queueLimitClose()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_LIMIT_CLOSE); + } + + /** + * 爆仓 + * + * @return + */ + @Bean + public Binding bindingCoinout() { + return BindingBuilder.bind(queueCoinout()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_COINOUT); + } + + + /** + * 价格操作 + * + * @return + */ + @Bean + public Binding bindingPriceoperate() { + return BindingBuilder.bind(queuePriceoperate()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_PRICEOPERATE); + } + + /** + * 平仓绑定 + * + * @return + */ + @Bean + public Binding bindingCloseTrade() { + return BindingBuilder.bind(queueCloseTrade()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_CLOSETRADE); + } + + /** + * 全仓爆仓绑定 + * + * @return + */ + @Bean + public Binding bindingWholeBomb() { + return BindingBuilder.bind(queueWholeBomb()).to(orderExchange()).with(RabbitMqConfig.ROUTINGKEY_WHOLE_BOMB); + } + } -- Gitblit v1.9.1