FigEdgeHandler.java

1
/* $Id: FigEdgeHandler.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
 *    thn
11
 *****************************************************************************
12
 *
13
 * Some portions of this file was previously release using the BSD License:
14
 */
15
16
// Copyright (c) 1996-2006 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
package org.argouml.persistence;
39
40
import java.util.StringTokenizer;
41
42
import org.tigris.gef.persistence.pgml.PGMLStackParser;
43
import org.tigris.gef.presentation.Fig;
44
import org.tigris.gef.presentation.FigEdge;
45
import org.tigris.gef.presentation.FigEdgePoly;
46
import org.tigris.gef.presentation.FigLine;
47
import org.tigris.gef.presentation.FigPoly;
48
import org.xml.sax.SAXException;
49
50
/**
51
 * The handler for elements that represent FigEdge objects.
52
 * This extends the base GEF class to allow comment edges to connect
53
 * to nodes inside other edges.
54
 * @author Bob Tarling
55
 */
56
class FigEdgeHandler
57
    extends org.tigris.gef.persistence.pgml.FigEdgeHandler {
58
59
    /**
60
     * @param parser
61
     * @param theEdge
62
     */
63
    public FigEdgeHandler(PGMLStackParser parser, FigEdge theEdge) {
64
        super(parser, theEdge);
65
    }
66
    /**
67
     * Incorporates a contained element into this FigEdge object.<p>
68
     *
69
     * Three types of contained elements are supported: FigLine or FigPoly
70
     * become the Fig associated with this FigEdge; String valued elements
71
     * (i.e., <em>private</em> elements) are themselves parsed to determin the
72
     * source and destination PortFig's for this FigEdge.
73
     *
74
     * @see org.tigris.gef.persistence.pgml.Container#addObject(java.lang.Object)
75
     */
76
    public void addObject(Object o) throws SAXException {
77
        FigEdge edge = getFigEdge();
78 2 1. addObject : negated conditional → NO_COVERAGE
2. addObject : negated conditional → NO_COVERAGE
        if (o instanceof FigLine || o instanceof FigPoly) {
79 1 1. addObject : removed call to org/tigris/gef/presentation/FigEdge::setFig → NO_COVERAGE
            edge.setFig((Fig) o);
80 1 1. addObject : negated conditional → NO_COVERAGE
            if (o instanceof FigPoly) {
81 1 1. addObject : removed call to org/tigris/gef/presentation/FigPoly::setComplete → NO_COVERAGE
                ((FigPoly) o).setComplete(true);
82
            }
83 1 1. addObject : removed call to org/tigris/gef/presentation/FigEdge::calcBounds → NO_COVERAGE
            edge.calcBounds();
84 1 1. addObject : negated conditional → NO_COVERAGE
            if (edge instanceof FigEdgePoly) {
85 1 1. addObject : removed call to org/tigris/gef/presentation/FigEdgePoly::setInitiallyLaidOut → NO_COVERAGE
                ((FigEdgePoly) edge).setInitiallyLaidOut(true);
86
            }
87 1 1. addObject : removed call to org/tigris/gef/presentation/FigEdge::updateAnnotationPositions → NO_COVERAGE
            edge.updateAnnotationPositions();
88
        }
89
90 1 1. addObject : negated conditional → NO_COVERAGE
        if (o instanceof String) {
91
            PGMLStackParser parser = getPGMLStackParser();
92
//            Fig spf = null;
93
//            Fig dpf = null;
94
//            FigNode sfn = null;
95
//            FigNode dfn = null;
96
            String body = (String) o;
97
            StringTokenizer st2 = new StringTokenizer(body, "=\"' \t\n");
98
            String sourcePortFig = null;
99
            String destPortFig = null;
100
            String sourceFigNode = null;
101
            String destFigNode = null;
102 1 1. addObject : negated conditional → NO_COVERAGE
            while (st2.hasMoreElements()) {
103
                String attribute = st2.nextToken();
104
                String value = st2.nextToken();
105
                
106 1 1. addObject : negated conditional → NO_COVERAGE
                if (attribute.equals("sourcePortFig")) {
107
                    sourcePortFig = value;
108
                }
109
110 1 1. addObject : negated conditional → NO_COVERAGE
                if (attribute.equals("destPortFig")) {
111
                    destPortFig = value;
112
                }
113
114 1 1. addObject : negated conditional → NO_COVERAGE
                if (attribute.equals("sourceFigNode")) {
115
                    sourceFigNode = value;
116
                }
117
118 1 1. addObject : negated conditional → NO_COVERAGE
                if (attribute.equals("destFigNode")) {
119
                    destFigNode = value;
120
                }
121
            }
122
            
123 1 1. addObject : removed call to org/argouml/persistence/PGMLStackParser::addFigEdge → NO_COVERAGE
            ((org.argouml.persistence.PGMLStackParser) parser).addFigEdge(
124
                    edge, 
125
                    sourcePortFig, 
126
                    destPortFig, 
127
                    sourceFigNode, 
128
                    destFigNode);
129
        }
130
    }
131
}

Mutations

78

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

2.2
Location : addObject
Killed by : none
negated conditional → NO_COVERAGE

79

1.1
Location : addObject
Killed by : none
removed call to org/tigris/gef/presentation/FigEdge::setFig → NO_COVERAGE

80

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

81

1.1
Location : addObject
Killed by : none
removed call to org/tigris/gef/presentation/FigPoly::setComplete → NO_COVERAGE

83

1.1
Location : addObject
Killed by : none
removed call to org/tigris/gef/presentation/FigEdge::calcBounds → NO_COVERAGE

84

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

85

1.1
Location : addObject
Killed by : none
removed call to org/tigris/gef/presentation/FigEdgePoly::setInitiallyLaidOut → NO_COVERAGE

87

1.1
Location : addObject
Killed by : none
removed call to org/tigris/gef/presentation/FigEdge::updateAnnotationPositions → NO_COVERAGE

90

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

102

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

106

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

110

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

114

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

118

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

123

1.1
Location : addObject
Killed by : none
removed call to org/argouml/persistence/PGMLStackParser::addFigEdge → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 0.32