2 * Copyright (C) 2007-2012 Mathieu Baudier
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org
.argeo
.slc
.services
.impl
;
18 import org
.argeo
.slc
.core
.attachment
.Attachment
;
19 import org
.argeo
.slc
.core
.attachment
.SimpleAttachment
;
20 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResult
;
21 import org
.argeo
.slc
.core
.test
.tree
.TreeTestResultListener
;
22 import org
.argeo
.slc
.msg
.test
.tree
.AddTreeTestResultAttachmentRequest
;
23 import org
.argeo
.slc
.msg
.test
.tree
.CloseTreeTestResultRequest
;
24 import org
.argeo
.slc
.msg
.test
.tree
.CreateTreeTestResultRequest
;
25 import org
.argeo
.slc
.msg
.test
.tree
.ResultPartRequest
;
26 import org
.argeo
.slc
.services
.TestManagerService
;
27 import org
.argeo
.slc
.test
.TestResultPart
;
29 /** In memory access to a test manager service */
30 public class TestManagerServiceAdapter
implements TreeTestResultListener
{
31 private Boolean onlyOnClose
= false;
33 private TestManagerService testManagerService
;
35 public void resultPartAdded(TreeTestResult testResult
,
36 TestResultPart testResultPart
) {
40 if (testResult
.getResultParts().size() == 1
41 && testResult
.getResultParts().values().iterator().next()
42 .getParts().size() == 1) {
43 CreateTreeTestResultRequest req
= new CreateTreeTestResultRequest(
45 testManagerService
.createTreeTestResult(req
);
47 ResultPartRequest req
= new ResultPartRequest(testResult
);
48 testManagerService
.addResultPart(req
);
52 public void close(TreeTestResult testResult
) {
54 CreateTreeTestResultRequest req
= new CreateTreeTestResultRequest(
56 testManagerService
.createTreeTestResult(req
);
58 CloseTreeTestResultRequest req
= new CloseTreeTestResultRequest(
60 testManagerService
.closeTreeTestResult(req
);
64 public void addAttachment(TreeTestResult testResult
, Attachment attachment
) {
67 AddTreeTestResultAttachmentRequest req
= new AddTreeTestResultAttachmentRequest();
68 req
.setResultUuid(testResult
.getUuid());
69 req
.setAttachment((SimpleAttachment
) attachment
);
70 testManagerService
.addAttachment(req
);
74 /** Publishes the test result only when it gets closed. */
75 public void setOnlyOnClose(Boolean onlyOnClose
) {
76 this.onlyOnClose
= onlyOnClose
;
79 public void setTestManagerService(TestManagerService testManagerService
) {
80 this.testManagerService
= testManagerService
;