]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/services/ServiceMsgHandler.java
Read the message body using the same method as ActiveMQ web
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / services / ServiceMsgHandler.java
1 package org.argeo.slc.services;
2
3 import org.argeo.slc.SlcException;
4 import org.argeo.slc.msg.MsgHandler;
5 import org.argeo.slc.msg.process.SlcExecutionStatusRequest;
6 import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest;
7 import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;
8 import org.argeo.slc.msg.test.tree.ResultPartRequest;
9 import org.argeo.slc.process.SlcExecution;
10 import org.argeo.slc.services.process.SlcExecutionService;
11 import org.argeo.slc.services.test.TestManagerService;
12
13 public class ServiceMsgHandler implements MsgHandler {
14 private TestManagerService testManagerService;
15 private SlcExecutionService slcExecutionService;
16
17 public Object handleMsg(Object msg) {
18 if (msg instanceof SlcExecution)
19 slcExecutionService.newExecution((SlcExecution) msg);
20 else if (msg instanceof SlcExecutionStatusRequest)
21 slcExecutionService.updateStatus((SlcExecutionStatusRequest) msg);
22 else if (msg instanceof CreateTreeTestResultRequest)
23 testManagerService
24 .createTreeTestResult((CreateTreeTestResultRequest) msg);
25 else if (msg instanceof ResultPartRequest)
26 testManagerService.addResultPart((ResultPartRequest) msg);
27 else if (msg instanceof CloseTreeTestResultRequest)
28 testManagerService
29 .closeTreeTestResult((CloseTreeTestResultRequest) msg);
30 else
31 throw new SlcException("Unrecognized message type " + msg);
32 return null;
33 }
34
35 public void setTestManagerService(TestManagerService testManagerService) {
36 this.testManagerService = testManagerService;
37 }
38
39 public void setSlcExecutionService(SlcExecutionService slcExecutionService) {
40 this.slcExecutionService = slcExecutionService;
41 }
42
43 }