EMMA Coverage Report (generated Fri Feb 14 08:28:31 UTC 2014)
[all classes][org.qedeq.kernel.bo.job]

COVERAGE SUMMARY FOR SOURCE FILE [ServiceResultImpl.java]

nameclass, %method, %block, %line, %
ServiceResultImpl.java100% (1/1)27%  (3/11)61%  (68/111)59%  (23/39)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class ServiceResultImpl100% (1/1)27%  (3/11)61%  (68/111)59%  (23/39)
ServiceResultImpl (boolean, boolean, boolean, boolean, String, Object): void 0%   (0/1)0%   (0/21)0%   (0/8)
deleteExecutionResult (): void 0%   (0/1)0%   (0/4)0%   (0/2)
getErrorMessage (): String 0%   (0/1)0%   (0/3)0%   (0/1)
getExecutionResult (): Object 0%   (0/1)0%   (0/3)0%   (0/1)
hasErrors (): boolean 0%   (0/1)0%   (0/3)0%   (0/1)
hasWarnings (): boolean 0%   (0/1)0%   (0/3)0%   (0/1)
isOk (): boolean 0%   (0/1)0%   (0/3)0%   (0/1)
wasInterrupted (): boolean 0%   (0/1)0%   (0/3)0%   (0/1)
<static initializer> 100% (1/1)100% (11/11)100% (2/2)
ServiceResultImpl (String): void 100% (1/1)100% (21/21)100% (8/8)
ServiceResultImpl (boolean): void 100% (1/1)100% (36/36)100% (13/13)

1/* This file is part of the project "Hilbert II" - http://www.qedeq.org
2 *
3 * Copyright 2000-2014,  Michael Meyling <mime@qedeq.org>.
4 *
5 * "Hilbert II" is free software; you can redistribute
6 * it and/or modify it under the terms of the GNU General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 */
15 
16package org.qedeq.kernel.bo.job;
17 
18import org.apache.commons.lang.StringUtils;
19import org.qedeq.kernel.bo.common.ModuleServiceResult;
20 
21 
22/**
23 * Execution result of a {@link ModuleServiceCall}.
24 *
25 * @author  Michael Meyling
26 */
27public class ServiceResultImpl implements ModuleServiceResult {
28 
29    /** A simple service result that has a user interrupt. */
30    public static final ModuleServiceResult INTERRUPTED = new ServiceResultImpl(true);
31 
32    /** A simple successful (=ok) service result. */
33    public static final ModuleServiceResult SUCCESSFUL = new ServiceResultImpl(false);
34 
35    /** Did a user interrupt occur and ended the service call? */
36    private final boolean interrupted;
37 
38    /** Was the call fully successful (finished ok without errors and warnings)? */
39    private final boolean ok;
40 
41    /** Did warnings occur? */
42    private final boolean hasWarnings;
43 
44    /** Did errors occur? */
45    private final boolean hasErrors;
46 
47    /** Error message. Might be empty. */
48    private final String message;
49 
50    /** Result of service call. Might be null even for a successful call. */
51    private Object result;
52 
53    /**
54     * Constructor.
55     *
56     * @param   interrupted Did a user interrupt occur and ended the service call?
57     * @param   ok          Was the call fully successful (finished ok without errors and warnings)?
58     * @param   hasWarnings Did warnings occur?
59     * @param   hasErrors   Did errors occur?
60     * @param   message     Error message. Might be empty.
61     * @param   result      Result of service call. Might be null even for a successful call.
62     */
63    public ServiceResultImpl(final boolean interrupted, final boolean ok, final boolean hasWarnings,
64            final boolean hasErrors, final String message, final Object result) {
65        this.interrupted = interrupted;
66        this.ok = ok;
67        this.hasWarnings = hasWarnings;
68        this.hasErrors = hasErrors;
69        this.message = message;
70        this.result = result;
71    }
72 
73    /**
74     * Constructor for a failure call.
75     *
76     * @param   errorMessage     Error message. Should not be empty.
77     */
78    public ServiceResultImpl(final String errorMessage) {
79        this.interrupted = false;
80        this.ok = false;
81        this.hasErrors = true;
82        this.hasWarnings = false;
83        this.message = errorMessage;
84        this.result = null;
85    }
86 
87    /**
88     * Constructor for simple successful or user interrupted call.
89     *
90     * @param   interrupted Did a user interrupt occur and ended the service call?
91     */
92    private ServiceResultImpl(final boolean interrupted) {
93        if (interrupted) {
94            this.interrupted = true;
95            this.ok = false;
96            this.hasErrors = true;
97            this.message = "User interrupted service call.";
98        } else {
99            this.interrupted = false;
100            this.ok = true;
101            this.hasErrors = true;
102            this.message = StringUtils.EMPTY;
103        }
104        this.hasWarnings = false;
105        this.result = null;
106    }
107 
108    public boolean wasInterrupted() {
109        return interrupted;
110    }
111 
112    public boolean isOk() {
113        return ok;
114    }
115 
116    public boolean hasWarnings() {
117        return hasWarnings;
118    }
119 
120    public boolean hasErrors() {
121        return hasErrors;
122    }
123 
124    public String getErrorMessage() {
125        return message;
126    }
127 
128    public Object getExecutionResult() {
129        return result;
130    }
131 
132    /**
133     * Remove execution result. This might be necessary because it is really big.
134     */
135    public void deleteExecutionResult() {
136        result = null;
137    }
138}

[all classes][org.qedeq.kernel.bo.job]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov