X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.server%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fws%2Fprocess%2FSlcExecutionRequestEp.java;h=e9e63da0fc4b16493e047f8ef5cad3dd63c0827e;hb=bf3678f8b4d6dbd9965a27632fe6bb39db689c9a;hp=f92dbc68e6782e0c758f7d8ca5f32bd98faf1348;hpb=319fa0f80e55511d6d425f3de18a5123848b41ad;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.server/src/main/java/org/argeo/slc/ws/process/SlcExecutionRequestEp.java b/org.argeo.slc.server/src/main/java/org/argeo/slc/ws/process/SlcExecutionRequestEp.java index f92dbc68e..e9e63da0f 100644 --- a/org.argeo.slc.server/src/main/java/org/argeo/slc/ws/process/SlcExecutionRequestEp.java +++ b/org.argeo.slc.server/src/main/java/org/argeo/slc/ws/process/SlcExecutionRequestEp.java @@ -26,20 +26,21 @@ public class SlcExecutionRequestEp extends AbstractMarshallingPayloadEndpoint { if (requestObject instanceof SlcExecutionRequest) { SlcExecutionRequest msg = (SlcExecutionRequest) requestObject; - SlcExecution slcExecution = msg.getSlcExecution(); + SlcExecution slcExecutionMsg = msg.getSlcExecution(); - if (slcExecutionDao.getSlcExecution(slcExecution.getUuid()) == null) { - if (log.isDebugEnabled()) - log.debug("Creating SlcExecution with uuid " - + slcExecution.getUuid()); + SlcExecution slcExecutionPersisted = slcExecutionDao.getSlcExecution(slcExecutionMsg.getUuid()); + if (slcExecutionPersisted == null) { + if (log.isTraceEnabled()) + log.trace("Creating SLC execution #" + + slcExecutionMsg.getUuid()); - slcExecutionDao.create(slcExecution); + slcExecutionDao.create(slcExecutionMsg); } else { - if (log.isDebugEnabled()) - log.debug("Updating SlcExecution with uuid " - + slcExecution.getUuid()); + if (log.isTraceEnabled()) + log.trace("Updating SLC execution #" + + slcExecutionMsg.getUuid()); - slcExecutionDao.update(slcExecution); + slcExecutionDao.merge(slcExecutionMsg); } return null; @@ -47,7 +48,16 @@ public class SlcExecutionRequestEp extends AbstractMarshallingPayloadEndpoint { SlcExecutionStatusRequest msg = (SlcExecutionStatusRequest) requestObject; SlcExecution slcExecution = slcExecutionDao.getSlcExecution(msg .getSlcExecutionUuid()); + if (slcExecution == null) + throw new SlcException("Could not find SLC execution #" + + msg.getSlcExecutionUuid()); + slcExecution.setStatus(msg.getNewStatus()); + + if (log.isTraceEnabled()) + log.trace("Updating status for SLC execution #" + + slcExecution.getUuid()); + slcExecutionDao.update(slcExecution); return null; } else { @@ -55,5 +65,4 @@ public class SlcExecutionRequestEp extends AbstractMarshallingPayloadEndpoint { + requestObject.getClass()); } } - }