com.vcredit.lrh.rabbitmq.service.impl.APPRabbitMessageServiceImpl.java Source code

Java tutorial

Introduction

Here is the source code for com.vcredit.lrh.rabbitmq.service.impl.APPRabbitMessageServiceImpl.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.vcredit.lrh.rabbitmq.service.impl;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.vcredit.lrh.commons.constants.MessageType;
import com.vcredit.lrh.commons.constants.ScheduleTaskType;
import com.vcredit.lrh.commons.message.RabbitMessage;
import com.vcredit.lrh.rabbitmq.RabbitMQProperties;
import com.vcredit.lrh.rabbitmq.service.APPRabbitMessageService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.amqp.core.MessageBuilder;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @author Liu Jianwei<liujianwei@vcredit.com>
 * @date 2016-6-30
 */
@Service(value = "appLogMessageService")
public class APPRabbitMessageServiceImpl implements APPRabbitMessageService {

    private static final Logger logger = LoggerFactory.getLogger(APPRabbitMessageServiceImpl.class);

    @Autowired
    RabbitTemplate rabbitTemplate;

    @Autowired
    RabbitMQProperties properties;

    @Override
    public void vbsAccessLog(JSONObject vbsAccessLog) {
        try {
            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.VBS_ACCESS_LOG, vbsAccessLog);
            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes())
                    .build();
            rabbitTemplate.send(properties.getLogRouteKey(), message);
        } catch (JsonProcessingException ex) {
            logger.error("APPRabbitMessageServiceImpl.vbsAccesslog: " + ex.getMessage(), ex);
        }
    }

    //    @Override
    //    public void pushAPPMessage(APPMessage messageObject) {
    //        try {
    //            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.APP_MESSAGE_PUSH, messageObject);
    //            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes()).build();
    //            rabbitTemplate.send(properties.getMessageRouteKey(), message);
    //        } catch (JsonProcessingException ex) {
    //            logger.error("APPRabbitMessageServiceImpl.pushAPPMessage: " + ex.getMessage(), ex);
    //        }
    //    }
    //
    //    @Override
    //    public void loginLog(APPLoginLog loginLog) {
    //        try {
    //            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.APP_LOGIN_LOG, loginLog);
    //            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes()).build();
    //            rabbitTemplate.send(properties.getLogRouteKey(), message);
    //        } catch (JsonProcessingException ex) {
    //            logger.error("APPRabbitMessageServiceImpl.loginLog:  " + ex.getMessage(), ex);
    //        }
    //    }
    //
    //    @Override
    //    public void appClientLog(AppClientLog clientLog) {
    //        try {
    //            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.APP_CLIENT_LOG, clientLog);
    //            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes()).build();
    //            rabbitTemplate.send(properties.getLogRouteKey(), message);
    //        } catch (JsonProcessingException ex) {
    //            logger.error("APPRabbitMessageServiceImpl.appClientLog: " + ex.getMessage(), ex);
    //        }
    //    }
    //
    //    @Override
    //    public void thirdPartyAccessLog(ThirdpartyAccessLog log) {
    //        try {
    //            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.THIRD_PARTY_ACCESS_LOG, log);
    //            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes()).build();
    //            rabbitTemplate.send(properties.getLogRouteKey(), message);
    //        } catch (JsonProcessingException ex) {
    //            logger.error("APPRabbitMessageServiceImpl.thirdPartyAccessLog: " + ex.getMessage(), ex);
    //        }
    //    }
    //
    //    @Override
    //    public void smsNotification(SMSNotification notification) {
    //
    //    }
    //
    //    @Override
    //    public void userDimission(String agentId) {
    //        try {
    //            RabbitMessage rabbitMessage = new RabbitMessage(MessageType.USER_DIMISSION, agentId);
    //            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes()).build();
    //            rabbitTemplate.send(properties.getUserDissMissionRouteKey(), message);
    //        } catch (JsonProcessingException e) {
    //            logger.error(e.getMessage(), e);
    //
    //        }
    //    }

    @Override
    public void sendScheduleTaskMessage(ScheduleTaskType taskType, String content) {
        try {
            RabbitMessage rabbitMessage = new RabbitMessage(taskType.toString(), content);
            org.springframework.amqp.core.Message message = MessageBuilder.withBody(rabbitMessage.getBytes())
                    .build();
            rabbitTemplate.send(properties.getScheduleTaskRouteKey(), message);
        } catch (JsonProcessingException ex) {
            logger.error("APPRabbitMessageServiceImpl.sendScheduleTaskMessage: " + ex.getMessage(), ex);
        }
    }

}