All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.yqjr.framework.component.log.interactive.ServerInteractiveLogger Maven / Gradle / Ivy

/**
 * 
 */
package com.yqjr.framework.component.log.interactive;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;

import com.yqjr.framework.base.BaseModel;
import com.yqjr.framework.component.log.InteractiveLogger;
import com.yqjr.framework.datatype.BizzException;
import com.yqjr.framework.datatype.ExceptionCode;
import com.yqjr.modules.serverlog.entity.ServerLog;
import com.yqjr.modules.serverlog.model.ServerLogModel;
import com.yqjr.modules.serverlog.service.ServerLogService;

/**
 * ClassName: ServerInteractiveLogger 
* Description: 服务端交互式日志记录组件
* Create By: admin
* Create Date: 2017年6月7日 上午8:15:05
* Modified By:
* Modified Date:
* Modified Content:
* Version: 1.0
*/ @Service public class ServerInteractiveLogger extends InteractiveLogger { @Autowired private ServerLogService serverLogService; /* * (non-Javadoc) * * @see com.yqjr.framework.component.log.InteractiveLogger#saveLog(com.yqjr. * framework.base.BaseEntity) */ @Override @Transactional(propagation = Propagation.REQUIRES_NEW) public void saveLog(BaseModel logModel) { Assert.notNull(logModel); Assert.isInstanceOf(ServerLogModel.class, logModel, "参数类型不符"); ServerLogModel serverLogModel = (ServerLogModel) logModel; if (serverLogService.checkExists(serverLogModel.getSerialNo())) { throw new BizzException(ExceptionCode.WS_1001); } serverLogService.save(serverLogModel); } /** * Description: 更新日期记录状态
* Create By: admin
* Create Date: 2017年6月15日 下午3:51:43 * * @param logModel BaseModel */ @Transactional(propagation = Propagation.REQUIRES_NEW) public void updateLog(BaseModel logModel) { Assert.notNull(logModel); Assert.isInstanceOf(ServerLogModel.class, logModel, "参数类型不符"); serverLogService.update((ServerLogModel) logModel); } /* * (non-Javadoc) * * @see * com.yqjr.framework.component.log.InteractiveLogger#performanceSaveLog(com * .yqjr.framework.base.BaseEntity) */ @Override public void performanceSaveLog(BaseModel logModel) { Assert.notNull(logModel); Assert.isInstanceOf(ServerLogModel.class, logModel, "参数类型不符"); bufferQueue.add((ServerLogModel) logModel); } /* * (non-Javadoc) * * @see * com.yqjr.framework.component.log.InteractiveLogger#batchProcess(java.util * .List) */ @Override public void batchProcess(List> logs) { List entities = new ArrayList(); for (BaseModel model : logs) { ServerLog entity = serverLogService.toEntity((ServerLogModel) model, ServerLog.class); entities.add(entity); } serverLogService.batchUpdate(entities); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy