]> git.argeo.org Git - gpl/argeo-slc.git/commitdiff
Improve notifications to web services
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 4 May 2008 19:07:07 +0000 (19:07 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 4 May 2008 19:07:07 +0000 (19:07 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@1114 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

org.argeo.slc.core/src/main/java/org/argeo/slc/core/process/WebServiceSlcExecutionNotifier.java
org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceSlcExecutionNotifier.java [deleted file]
org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceTreeTestResultNotifier.java [new file with mode: 0644]
org.argeo.slc.core/src/test/resources/org/argeo/slc/ant/build.xml
org.argeo.slc.core/src/test/resources/org/argeo/slc/ws/result.xml

index 887a014ceab33c998b61afef6f04ed627bec665c..09e37122d684e0443e5e3a00b22335320f463d00 100644 (file)
@@ -17,47 +17,47 @@ public class WebServiceSlcExecutionNotifier implements SlcExecutionNotifier {
 \r
        private Log log = LogFactory.getLog(getClass());\r
 \r
-       public void addSteps(SlcExecution slcExecution,\r
-                       List<SlcExecutionStep> additionalSteps) {\r
-               SlcExecutionStepsRequest req = new SlcExecutionStepsRequest();\r
-               req.setSlcExecutionUuid(slcExecution.getUuid());\r
-               req.setSteps(additionalSteps);\r
-               if (log.isTraceEnabled()) {\r
-                       for (SlcExecutionStep step : additionalSteps) {\r
-                               log.trace("Step " + step.getUuid() + ": " + step.logAsString());\r
-                       }\r
-               }\r
-\r
+       public void newExecution(SlcExecution slcExecution) {\r
+               SlcExecutionRequest req = new SlcExecutionRequest();\r
+               req.setSlcExecution(slcExecution);\r
                try {\r
                        WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       if (log.isDebugEnabled())\r
-                               log.debug("Added steps to slc execution "\r
+                       if (log.isTraceEnabled())\r
+                               log.trace("Notified creation of slc execution "\r
                                                + slcExecution.getUuid());\r
                } catch (SoapFaultClientException e) {\r
                        WebServiceUtils.manageSoapException(e);\r
                }\r
        }\r
 \r
-       public void newExecution(SlcExecution slcExecution) {\r
+       public void updateExecution(SlcExecution slcExecution) {\r
                SlcExecutionRequest req = new SlcExecutionRequest();\r
                req.setSlcExecution(slcExecution);\r
                try {\r
                        WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       if (log.isDebugEnabled())\r
-                               log.debug("Notified creation of slc execution "\r
+                       if (log.isTraceEnabled())\r
+                               log.trace("Notified update of slc execution "\r
                                                + slcExecution.getUuid());\r
                } catch (SoapFaultClientException e) {\r
                        WebServiceUtils.manageSoapException(e);\r
                }\r
        }\r
 \r
-       public void updateExecution(SlcExecution slcExecution) {\r
-               SlcExecutionRequest req = new SlcExecutionRequest();\r
-               req.setSlcExecution(slcExecution);\r
+       public void addSteps(SlcExecution slcExecution,\r
+                       List<SlcExecutionStep> additionalSteps) {\r
+               SlcExecutionStepsRequest req = new SlcExecutionStepsRequest();\r
+               req.setSlcExecutionUuid(slcExecution.getUuid());\r
+               req.setSteps(additionalSteps);\r
+               if (log.isTraceEnabled()) {\r
+                       for (SlcExecutionStep step : additionalSteps) {\r
+                               log.trace("Step " + step.getUuid() + ": " + step.logAsString());\r
+                       }\r
+               }\r
+\r
                try {\r
                        WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       if (log.isDebugEnabled())\r
-                               log.debug("Notified update of slc execution "\r
+                       if (log.isTraceEnabled())\r
+                               log.trace("Added steps to slc execution "\r
                                                + slcExecution.getUuid());\r
                } catch (SoapFaultClientException e) {\r
                        WebServiceUtils.manageSoapException(e);\r
diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceSlcExecutionNotifier.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceSlcExecutionNotifier.java
deleted file mode 100644 (file)
index 0d51d22..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-package org.argeo.slc.core.test.tree;\r
-\r
-import java.util.List;\r
-\r
-import org.springframework.ws.client.core.WebServiceTemplate;\r
-import org.springframework.ws.soap.client.SoapFaultClientException;\r
-\r
-import org.apache.commons.logging.Log;\r
-import org.apache.commons.logging.LogFactory;\r
-\r
-import org.argeo.slc.core.test.TestResultListener;\r
-import org.argeo.slc.core.test.TestResultPart;\r
-import org.argeo.slc.dao.test.tree.TreeTestResultDao;\r
-import org.argeo.slc.msg.process.SlcExecutionRequest;\r
-import org.argeo.slc.msg.process.SlcExecutionStepsRequest;\r
-import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest;\r
-import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;\r
-import org.argeo.slc.msg.test.tree.ResultPartRequest;\r
-import org.argeo.slc.ws.client.WebServiceUtils;\r
-\r
-public class WebServiceSlcExecutionNotifier implements\r
-               TestResultListener<TreeTestResult> {\r
-       private WebServiceTemplate template;\r
-       private Boolean onlyOnClose = false;\r
-\r
-       private Log log = LogFactory.getLog(getClass());\r
-\r
-       public void resultPartAdded(TreeTestResult testResult,\r
-                       TestResultPart testResultPart) {\r
-               try {\r
-                       if (testResult.getResultParts().size() == 1) {\r
-                               CreateTreeTestResultRequest req = new CreateTreeTestResultRequest(\r
-                                               testResult);\r
-\r
-                               if (log.isDebugEnabled())\r
-                                       log.debug("Send create result request for result "\r
-                                                       + testResult.getUuid());\r
-\r
-                               WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       } else {\r
-                               ResultPartRequest req = new ResultPartRequest(testResult);\r
-\r
-                               if (log.isDebugEnabled())\r
-                                       log.debug("Send result parts for result "\r
-                                                       + testResult.getUuid());\r
-\r
-                               WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       }\r
-               } catch (SoapFaultClientException e) {\r
-                       WebServiceUtils.manageSoapException(e);\r
-               }\r
-       }\r
-\r
-       public void close(TreeTestResult testResult) {\r
-               try {\r
-                       if (onlyOnClose) {\r
-                               CreateTreeTestResultRequest req = new CreateTreeTestResultRequest(\r
-                                               testResult);\r
-\r
-                               if (log.isDebugEnabled())\r
-                                       log.debug("Send create result request for result "\r
-                                                       + testResult.getUuid());\r
-\r
-                               WebServiceUtils.marshalSendAndReceive(template, req);\r
-                       } else {\r
-                               CloseTreeTestResultRequest req = new CloseTreeTestResultRequest(\r
-                                               testResult);\r
-\r
-                               if (log.isDebugEnabled())\r
-                                       log.debug("Send close result request for result "\r
-                                                       + testResult.getUuid());\r
-\r
-                               WebServiceUtils.marshalSendAndReceive(template, req);\r
-\r
-                       }\r
-               } catch (SoapFaultClientException e) {\r
-                       WebServiceUtils.manageSoapException(e);\r
-               }\r
-\r
-       }\r
-\r
-       public void setTemplate(WebServiceTemplate template) {\r
-               this.template = template;\r
-       }\r
-\r
-       public void setOnlyOnClose(Boolean onlyOnClose) {\r
-               this.onlyOnClose = onlyOnClose;\r
-       }\r
-}\r
diff --git a/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceTreeTestResultNotifier.java b/org.argeo.slc.core/src/main/java/org/argeo/slc/core/test/tree/WebServiceTreeTestResultNotifier.java
new file mode 100644 (file)
index 0000000..698c24c
--- /dev/null
@@ -0,0 +1,87 @@
+package org.argeo.slc.core.test.tree;\r
+\r
+import org.springframework.ws.client.core.WebServiceTemplate;\r
+import org.springframework.ws.soap.client.SoapFaultClientException;\r
+\r
+import org.apache.commons.logging.Log;\r
+import org.apache.commons.logging.LogFactory;\r
+\r
+import org.argeo.slc.core.test.TestResultListener;\r
+import org.argeo.slc.core.test.TestResultPart;\r
+import org.argeo.slc.msg.test.tree.CloseTreeTestResultRequest;\r
+import org.argeo.slc.msg.test.tree.CreateTreeTestResultRequest;\r
+import org.argeo.slc.msg.test.tree.ResultPartRequest;\r
+import org.argeo.slc.ws.client.WebServiceUtils;\r
+\r
+public class WebServiceTreeTestResultNotifier implements\r
+               TestResultListener<TreeTestResult> {\r
+       private WebServiceTemplate template;\r
+       private Boolean onlyOnClose = false;\r
+\r
+       private Log log = LogFactory.getLog(getClass());\r
+\r
+       public void resultPartAdded(TreeTestResult testResult,\r
+                       TestResultPart testResultPart) {\r
+               if (onlyOnClose)\r
+                       return;\r
+                       \r
+               try {\r
+                       if (testResult.getResultParts().size() == 1) {\r
+                               CreateTreeTestResultRequest req = new CreateTreeTestResultRequest(\r
+                                               testResult);\r
+\r
+                               if (log.isDebugEnabled())\r
+                                       log.debug("Send create result request for result "\r
+                                                       + testResult.getUuid());\r
+\r
+                               WebServiceUtils.marshalSendAndReceive(template, req);\r
+                       } else {\r
+                               ResultPartRequest req = new ResultPartRequest(testResult);\r
+\r
+                               if (log.isDebugEnabled())\r
+                                       log.debug("Send result parts for result "\r
+                                                       + testResult.getUuid());\r
+\r
+                               WebServiceUtils.marshalSendAndReceive(template, req);\r
+                       }\r
+               } catch (SoapFaultClientException e) {\r
+                       WebServiceUtils.manageSoapException(e);\r
+               }\r
+       }\r
+\r
+       public void close(TreeTestResult testResult) {\r
+               try {\r
+                       if (onlyOnClose) {\r
+                               CreateTreeTestResultRequest req = new CreateTreeTestResultRequest(\r
+                                               testResult);\r
+\r
+                               if (log.isDebugEnabled())\r
+                                       log.debug("Send create result request for result "\r
+                                                       + testResult.getUuid());\r
+\r
+                               WebServiceUtils.marshalSendAndReceive(template, req);\r
+                       } else {\r
+                               CloseTreeTestResultRequest req = new CloseTreeTestResultRequest(\r
+                                               testResult);\r
+\r
+                               if (log.isDebugEnabled())\r
+                                       log.debug("Send close result request for result "\r
+                                                       + testResult.getUuid());\r
+\r
+                               WebServiceUtils.marshalSendAndReceive(template, req);\r
+\r
+                       }\r
+               } catch (SoapFaultClientException e) {\r
+                       WebServiceUtils.manageSoapException(e);\r
+               }\r
+\r
+       }\r
+\r
+       public void setTemplate(WebServiceTemplate template) {\r
+               this.template = template;\r
+       }\r
+\r
+       public void setOnlyOnClose(Boolean onlyOnClose) {\r
+               this.onlyOnClose = onlyOnClose;\r
+       }\r
+}\r
index 950e870244367d8e7beff3a18d20ca05382ab58e..f2ea5c52c8444767a4c62ab55b233a9c2f8245e3 100644 (file)
@@ -12,5 +12,7 @@
                        <testDefinition bean="testDef"/>\r
                        <testData bean="testData.context1"/>\r
                </slc.test>\r
+               \r
+               <slc.closeResult result="testResult" />\r
        </target>\r
 </project>
\ No newline at end of file
index 27eb955346cbf4b3582c0291a0d215eab479bdf8..b2cb1ff947a3be395368329b3187311849bde80b 100644 (file)
        </bean>\r
 \r
        <bean name="resultWsNotfier"\r
-               class="org.argeo.slc.core.test.tree.WebServiceSlcExecutionNotifier">\r
+               class="org.argeo.slc.core.test.tree.WebServiceTreeTestResultNotifier">\r
                <property name="template"\r
                        ref="slcDefault.ws.client.webServiceTemplate" />\r
+               <property name="onlyOnClose" value="false" />\r
        </bean>\r
 \r
 </beans>
\ No newline at end of file