]> git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.server/src/main/java/org/argeo/slc/ws/process/SlcExecutionStepsRequestEp.java
cf6a7af93bec9198fba4c4460566dcb38645f124
[gpl/argeo-slc.git] / org.argeo.slc.server / src / main / java / org / argeo / slc / ws / process / SlcExecutionStepsRequestEp.java
1 package org.argeo.slc.ws.process;
2
3 import org.springframework.ws.server.endpoint.AbstractMarshallingPayloadEndpoint;
4
5 import org.apache.commons.logging.Log;
6 import org.apache.commons.logging.LogFactory;
7
8 import org.argeo.slc.core.process.SlcExecution;
9 import org.argeo.slc.dao.process.SlcExecutionDao;
10 import org.argeo.slc.msg.process.SlcExecutionStepsRequest;
11
12 public class SlcExecutionStepsRequestEp extends
13 AbstractMarshallingPayloadEndpoint {
14
15 private Log log = LogFactory.getLog(getClass());
16
17 private final SlcExecutionDao slcExecutionDao;
18
19 public SlcExecutionStepsRequestEp(SlcExecutionDao slcExecutionDao) {
20 this.slcExecutionDao = slcExecutionDao;
21 }
22
23 @Override
24 protected Object invokeInternal(Object requestObject) throws Exception {
25 SlcExecutionStepsRequest msg = (SlcExecutionStepsRequest) requestObject;
26 String uuid = msg.getSlcExecutionUuid();
27 SlcExecution slcExecution = slcExecutionDao.getSlcExecution(uuid);
28
29 slcExecution.getSteps().addAll(msg.getSteps());
30
31 slcExecutionDao.update(slcExecution);
32 log.debug("Added " + msg.getSteps().size()
33 + "steps to SlcExecution with uuid " + slcExecution.getUuid());
34 return null;
35 }
36
37 }