X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.agent%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fant%2Ftest%2FSlcCloseTestResultTask.java;h=9eeb1e0cf81fdbed2783b7fc6eb888cae16bde0a;hb=5ecb072f6474a13dec2a40b2470add8b45d4db18;hp=bc0c2ba1ab70f9662a0ca7a98590e4b7e501b43b;hpb=4adf05018f32ff3a5e882a4b58b576df6869feb9;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcCloseTestResultTask.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcCloseTestResultTask.java index bc0c2ba1a..9eeb1e0cf 100644 --- a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcCloseTestResultTask.java +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcCloseTestResultTask.java @@ -1,24 +1,40 @@ package org.argeo.slc.ant.test; +import java.util.List; +import java.util.Vector; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.argeo.slc.ant.spring.SpringArg; import org.argeo.slc.ant.structure.SAwareTask; import org.argeo.slc.core.structure.StructureRegistry; import org.argeo.slc.core.test.TestResult; /** Ant tasks closing a given result. */ public class SlcCloseTestResultTask extends SAwareTask { - private String result; + private final static Log log = LogFactory + .getLog(SlcCloseTestResultTask.class); + + public List> results = new Vector>(); @Override public void executeActions(String mode) { if (!mode.equals(StructureRegistry.READ)) { - TestResult testResult = (TestResult) getContext().getBean(result); - testResult.close(); + for (SpringArg result : results) { + try { + result.getBeanInstance().close(); + } catch (RuntimeException e) { + log.error("Could not close result " + + (result.getBean() != null ? result.getBean() + : result.getAntref()), e); + } + } } } - /** Sets the bean name of the result to close. */ - public void setResult(String bean) { - this.result = bean; + public SpringArg createResult() { + SpringArg result = new SpringArg(); + results.add(result); + return result; } - }