4 changed files with 62 additions and 0 deletions
@ -0,0 +1,45 @@ |
|||||
|
package com.ccsens.game.service; |
||||
|
|
||||
|
|
||||
|
import com.ccsens.game.bean.dto.message.BaseMessageDto; |
||||
|
import com.ccsens.game.bean.dto.message.ChromeMessageDto; |
||||
|
import com.ccsens.game.bean.dto.message.GameMessageWithChangeStatusOut; |
||||
|
import com.ccsens.util.JacksonUtil; |
||||
|
import com.ccsens.util.WebConstant; |
||||
|
import com.ccsens.util.config.RabbitMQConfig; |
||||
|
import org.slf4j.Logger; |
||||
|
import org.slf4j.LoggerFactory; |
||||
|
import org.springframework.amqp.rabbit.annotation.RabbitHandler; |
||||
|
import org.springframework.amqp.rabbit.annotation.RabbitListener; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Component; |
||||
|
|
||||
|
|
||||
|
@Component |
||||
|
@RabbitListener(queues = RabbitMQConfig.GAME_STATUS) |
||||
|
public class RabbitMQListener { |
||||
|
private Logger logger = LoggerFactory.getLogger(RabbitMQListener.class); |
||||
|
@Autowired |
||||
|
private IMessageService messageService; |
||||
|
|
||||
|
@RabbitHandler |
||||
|
public void process(String messageJson) { |
||||
|
try { |
||||
|
System.out.println("Rabbit Received: " + messageJson); |
||||
|
BaseMessageDto baseMessage = JacksonUtil.jsonToBean(messageJson,BaseMessageDto.class); |
||||
|
WebConstant.Message_Type type = WebConstant.Message_Type.phaseOf(baseMessage.getType()); |
||||
|
switch (type){ |
||||
|
case ChangeStatus: |
||||
|
messageService.doChangeStatusMessage(JacksonUtil.jsonToBean(messageJson, GameMessageWithChangeStatusOut.class)); |
||||
|
break; |
||||
|
default: |
||||
|
break; |
||||
|
} |
||||
|
}catch (Exception e){ |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
Loading…
Reference in new issue