|
@@ -1,21 +1,32 @@
|
|
|
package cn.com.qmth.examcloud.core.oe.student.report;
|
|
|
|
|
|
+import java.util.Properties;
|
|
|
+
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.aliyun.openservices.ons.api.Action;
|
|
|
+import com.aliyun.openservices.ons.api.ConsumeContext;
|
|
|
+import com.aliyun.openservices.ons.api.Consumer;
|
|
|
+import com.aliyun.openservices.ons.api.Message;
|
|
|
+import com.aliyun.openservices.ons.api.MessageListener;
|
|
|
+import com.aliyun.openservices.ons.api.ONSFactory;
|
|
|
+import com.aliyun.openservices.ons.api.PropertyKeyConst;
|
|
|
+
|
|
|
import cn.com.qmth.examcloud.core.oe.student.service.ExamProcessRecordService;
|
|
|
import cn.com.qmth.examcloud.reports.commons.enums.Tag;
|
|
|
-import cn.com.qmth.examcloud.reports.commons.enums.Topic;
|
|
|
+import cn.com.qmth.examcloud.reports.commons.util.ReportsUtil;
|
|
|
import cn.com.qmth.examcloud.web.bootstrap.PropertyHolder;
|
|
|
import cn.com.qmth.examcloud.web.support.SpringContextHolder;
|
|
|
-import com.alibaba.fastjson.JSON;
|
|
|
-import com.aliyun.openservices.ons.api.*;
|
|
|
-import org.slf4j.Logger;
|
|
|
-import org.slf4j.LoggerFactory;
|
|
|
-
|
|
|
-import java.util.Properties;
|
|
|
|
|
|
public class RocketMqConsumerListener {
|
|
|
+
|
|
|
private static final Logger LOG = LoggerFactory.getLogger(RocketMqConsumerListener.class);
|
|
|
|
|
|
- private static ExamProcessRecordService examProcessRecordService = SpringContextHolder.getBean(ExamProcessRecordService.class);
|
|
|
+ private static ExamProcessRecordService examProcessRecordService = SpringContextHolder
|
|
|
+ .getBean(ExamProcessRecordService.class);
|
|
|
+
|
|
|
private static Properties properties = new Properties();
|
|
|
|
|
|
static {
|
|
@@ -39,7 +50,8 @@ public class RocketMqConsumerListener {
|
|
|
private static void onlineExamStudent() {
|
|
|
properties.put(PropertyKeyConst.GROUP_ID, Tag.EXAM_PROCESS_RECORD.getGroup());
|
|
|
Consumer consumer = ONSFactory.createConsumer(properties);
|
|
|
- consumer.subscribe(Topic.REPORT_TOPIC.getCode(), Tag.EXAM_PROCESS_RECORD.getCode(), new MessageListener() {
|
|
|
+ consumer.subscribe(ReportsUtil.getReportTopic(), Tag.EXAM_PROCESS_RECORD.getCode(), new MessageListener() {
|
|
|
+
|
|
|
@Override
|
|
|
public Action consume(Message message, ConsumeContext context) {
|
|
|
try {
|
|
@@ -59,7 +71,7 @@ public class RocketMqConsumerListener {
|
|
|
|
|
|
private static void onMessageExamStudent(String message) {
|
|
|
ExamProcessRecordReport r = JSON.parseObject(message, ExamProcessRecordReport.class);
|
|
|
- examProcessRecordService.saveExamProcessRecord(r.getExamRecordDataId(),
|
|
|
- r.getExamProcess().getDesc(), r.getRecordTime(), r.getRemoteHost());
|
|
|
+ examProcessRecordService.saveExamProcessRecord(r.getExamRecordDataId(), r.getExamProcess().getDesc(),
|
|
|
+ r.getRecordTime(), r.getRemoteHost());
|
|
|
}
|
|
|
}
|