X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.support.jcr%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fjcr%2FJcrTestResult.java;h=daeb3249135caad35a12aeabc9eb5cb2f2cd900a;hb=a66f1580f7f1fcd781917d749eb9b29670f661f5;hp=ea2495e3ec19889708ae2bceacf9a75a3fc6a3d9;hpb=b3c5eaf56f98afc3e1068c154320b51e10b6424b;p=gpl%2Fargeo-slc.git diff --git a/runtime/org.argeo.slc.support.jcr/src/main/java/org/argeo/slc/jcr/JcrTestResult.java b/runtime/org.argeo.slc.support.jcr/src/main/java/org/argeo/slc/jcr/JcrTestResult.java index ea2495e3e..daeb32491 100644 --- a/runtime/org.argeo.slc.support.jcr/src/main/java/org/argeo/slc/jcr/JcrTestResult.java +++ b/runtime/org.argeo.slc.support.jcr/src/main/java/org/argeo/slc/jcr/JcrTestResult.java @@ -15,13 +15,15 @@ import javax.jcr.query.QueryManager; import org.argeo.jcr.JcrUtils; import org.argeo.slc.SlcException; +import org.argeo.slc.core.attachment.Attachment; +import org.argeo.slc.core.attachment.AttachmentsEnabled; import org.argeo.slc.test.TestResult; import org.argeo.slc.test.TestResultPart; import org.argeo.slc.test.TestRun; import org.argeo.slc.test.TestStatus; /** {@link TestResult} wrapping a JCR node of type {@link SlcTypes#SLC_RESULT}. */ -public class JcrTestResult implements TestResult, SlcNames { +public class JcrTestResult implements TestResult, SlcNames, AttachmentsEnabled { /** Should only be set for an already existing result. */ private String uuid; private Session session; @@ -30,6 +32,8 @@ public class JcrTestResult implements TestResult, SlcNames { /** cached for performance purposes */ private String nodeIdentifier = null; + private Boolean logoutWhenDestroyed = true; + private Map attributes = new HashMap(); public void init() { @@ -58,7 +62,8 @@ public class JcrTestResult implements TestResult, SlcNames { } public void destroy() { - + if (logoutWhenDestroyed) + JcrUtils.logoutQuietly(session); } public Node getNode() { @@ -128,6 +133,8 @@ public class JcrTestResult implements TestResult, SlcNames { JcrUtils.discardUnderlyingSessionQuietly(node); throw new SlcException("Cannot get close date from " + node, e); } + if (logoutWhenDestroyed) + JcrUtils.logoutQuietly(session); } public Date getCloseDate() { @@ -157,6 +164,10 @@ public class JcrTestResult implements TestResult, SlcNames { } } + public void addAttachment(Attachment attachment) { + // TODO implement it + } + public void setUuid(String uuid) { this.uuid = uuid; } @@ -177,4 +188,8 @@ public class JcrTestResult implements TestResult, SlcNames { this.attributes = attributes; } + public void setLogoutWhenDestroyed(Boolean logoutWhenDestroyed) { + this.logoutWhenDestroyed = logoutWhenDestroyed; + } + }