ResolvedCriticXMLHelper.java

1
/* $Id: ResolvedCriticXMLHelper.java 17832 2010-01-12 19:02:29Z linus $
2
 *****************************************************************************
3
 * Copyright (c) 2009 Contributors - see below
4
 * All rights reserved. This program and the accompanying materials
5
 * are made available under the terms of the Eclipse Public License v1.0
6
 * which accompanies this distribution, and is available at
7
 * http://www.eclipse.org/legal/epl-v10.html
8
 *
9
 * Contributors:
10
 *    tfmorris
11
 *****************************************************************************
12
 *
13
 * Some portions of this file was previously release using the BSD License:
14
 */
15
16
// Copyright (c) 1996-2008 The Regents of the University of California. All
17
// Rights Reserved. Permission to use, copy, modify, and distribute this
18
// software and its documentation without fee, and without a written
19
// agreement is hereby granted, provided that the above copyright notice
20
// and this paragraph appear in all copies.  This software program and
21
// documentation are copyrighted by The Regents of the University of
22
// California. The software program and documentation are supplied "AS
23
// IS", without any accompanying services from The Regents. The Regents
24
// does not warrant that the operation of the program will be
25
// uninterrupted or error-free. The end-user understands that the program
26
// was developed for research purposes and is advised not to rely
27
// exclusively on the program for any reason.  IN NO EVENT SHALL THE
28
// UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
29
// SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,
30
// ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
31
// THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF
32
// SUCH DAMAGE. THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY
33
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
34
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
35
// PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
36
// CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
37
// UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
38
39
package org.argouml.persistence;
40
41
import java.util.List;
42
import java.util.Vector;
43
44
import org.argouml.cognitive.ResolvedCritic;
45
46
/**
47
 * A helper class to provide a view of a ResolvedCritic that is particularly
48
 * suited for saving to an XML file.
49
 * Used by todo.tee
50
 * This is not to be considered as part of the peristence interface.
51
 *
52
 * @see	ResolvedCritic
53
 * @author Michael Stockman
54
 */
55
public class ResolvedCriticXMLHelper {
56
    /**
57
     * The ResolvedCritic this instance helps.
58
     */
59
    private final ResolvedCritic item;
60
61
    /**
62
     * Creates a new ResolvedCriticXMLHelper for helping item.
63
     *
64
     * @param	rc	The ResolvedCritic to expose.
65
     */
66
    public ResolvedCriticXMLHelper(ResolvedCritic rc) {
67 1 1. : negated conditional → NO_COVERAGE
        if (rc == null) {
68
            throw new IllegalArgumentException(
69
                    "There must be a ResolvedCritic supplied.");
70
        }
71
        item = rc;
72
    }
73
74
    /**
75
     * Encodes the critic of this ResolvedCritic in an XML safe way and
76
     * returns the new String. The String can be regained by running the
77
     * returned String through {@link TodoParser#decode(String)}.
78
     *
79
     * @return	The encoded critic.
80
     */
81
    public String getCritic() {
82 1 1. getCritic : mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getCritic to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
        return item.getCritic();
83
    }
84
85
    /**
86
     * Gets the offender vector of this critic where each offender is
87
     * wrapped in an OffenderXMLHelper.
88
     * 
89
     * @return	A Vector of OffenderXMLHelpers, or null if there are
90
     *		no offenders.
91
     * @see	OffenderXMLHelper
92
     * NOTE: used by todo.tee
93
     */
94
    public Vector<OffenderXMLHelper> getOffenderList() {
95
	List<String> in = item.getOffenderList();
96
	Vector<OffenderXMLHelper> out;
97
98 1 1. getOffenderList : negated conditional → NO_COVERAGE
	if (in == null) {
99 1 1. getOffenderList : mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getOffenderList to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
	    return null;
100
	}
101
	out = new Vector<OffenderXMLHelper>();
102 1 1. getOffenderList : negated conditional → NO_COVERAGE
	for (String elem : in) {
103
	    try {
104
		OffenderXMLHelper helper =
105
		    new OffenderXMLHelper(elem);
106 1 1. getOffenderList : removed call to java/util/Vector::addElement → NO_COVERAGE
		out.addElement(helper);
107
	    } catch (ClassCastException cce) {
108
	        // TODO: Shouldn't we do something here?
109
	    }
110
	}
111
112 1 1. getOffenderList : mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getOffenderList to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
	return out;
113
    }
114
}
115

Mutations

67

1.1
Location :
Killed by : none
negated conditional → NO_COVERAGE

82

1.1
Location : getCritic
Killed by : none
mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getCritic to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

98

1.1
Location : getOffenderList
Killed by : none
negated conditional → NO_COVERAGE

99

1.1
Location : getOffenderList
Killed by : none
mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getOffenderList to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

102

1.1
Location : getOffenderList
Killed by : none
negated conditional → NO_COVERAGE

106

1.1
Location : getOffenderList
Killed by : none
removed call to java/util/Vector::addElement → NO_COVERAGE

112

1.1
Location : getOffenderList
Killed by : none
mutated return of Object value for org/argouml/persistence/ResolvedCriticXMLHelper::getOffenderList to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 0.32