ChapterAutoNumber.java

1
/*
2
 * Copyright 2005 by Michael Niedermair.
3
 *
4
 * The contents of this file are subject to the Mozilla Public License Version 1.1
5
 * (the "License"); you may not use this file except in compliance with the License.
6
 * You may obtain a copy of the License at http://www.mozilla.org/MPL/
7
 *
8
 * Software distributed under the License is distributed on an "AS IS" basis,
9
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
10
 * for the specific language governing rights and limitations under the License.
11
 *
12
 * The Original Code is 'iText, a free JAVA-PDF library'.
13
 *
14
 * The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
15
 * the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
16
 * All Rights Reserved.
17
 * Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
18
 * are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
19
 *
20
 * Contributor(s): all the names of the contributors are added in the source code
21
 * where applicable.
22
 *
23
 * Alternatively, the contents of this file may be used under the terms of the
24
 * LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
25
 * provisions of LGPL are applicable instead of those above.  If you wish to
26
 * allow use of your version of this file only under the terms of the LGPL
27
 * License and not to allow others to use your version of this file under
28
 * the MPL, indicate your decision by deleting the provisions above and
29
 * replace them with the notice and other provisions required by the LGPL.
30
 * If you do not delete the provisions above, a recipient may use your version
31
 * of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
32
 *
33
 * This library is free software; you can redistribute it and/or modify it
34
 * under the terms of the MPL as stated above or under the terms of the GNU
35
 * Library General Public License as published by the Free Software Foundation;
36
 * either version 2 of the License, or any later version.
37
 *
38
 * This library is distributed in the hope that it will be useful, but WITHOUT
39
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
40
 * FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
41
 * details.
42
 *
43
 * If you didn't download this code from the following link, you should check if
44
 * you aren't using an obsolete version:
45
 * http://www.lowagie.com/iText/
46
 */
47
48
package com.lowagie.text;
49
50
import com.lowagie.text.error_messages.MessageLocalization;
51
/**
52
 * Chapter with auto numbering.
53
 *
54
 * @author Michael Niedermair
55
 */
56
public class ChapterAutoNumber extends Chapter {
57
58
    // constant
59
    private static final long serialVersionUID = -9217457637987854167L;
60
61
    /**
62
     * Is the chapter number already set?
63
     * @since    2.1.4
64
     */
65
    protected boolean numberSet = false;
66
    
67
    /**
68
     * Create a new object.
69
     *
70
     * @param para     the Chapter title (as a <CODE>Paragraph</CODE>)
71
     */
72
    public ChapterAutoNumber(final Paragraph para) {
73
        super(para, 0);
74
    }
75
76
    /**
77
     * Create a new object.
78
     * 
79
     * @param title        the Chapter title (as a <CODE>String</CODE>)
80
     */
81
    public ChapterAutoNumber(final String title) {
82
        super(title, 0);
83
    }
84
85
    /**
86
     * Create a new section for this chapter and ad it.
87
     *
88
     * @param title  the Section title (as a <CODE>String</CODE>)
89
     * @return Returns the new section.
90
     */
91
    public Section addSection(final String title) {
92 1 1. addSection : negated conditional → NO_COVERAGE
        if (isAddedCompletely()) {
93
            throw new IllegalStateException(MessageLocalization.getComposedMessage("this.largeelement.has.already.been.added.to.the.document"));
94
        }
95 1 1. addSection : mutated return of Object value for com/lowagie/text/ChapterAutoNumber::addSection to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
        return addSection(title, 2);
96
    }
97
98
    /**
99
     * Create a new section for this chapter and add it.
100
     *
101
     * @param title  the Section title (as a <CODE>Paragraph</CODE>)
102
     * @return Returns the new section.
103
     */
104
    public Section addSection(final Paragraph title) {
105 1 1. addSection : negated conditional → NO_COVERAGE
        if (isAddedCompletely()) {
106
            throw new IllegalStateException(MessageLocalization.getComposedMessage("this.largeelement.has.already.been.added.to.the.document"));
107
        }
108 1 1. addSection : mutated return of Object value for com/lowagie/text/ChapterAutoNumber::addSection to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE
        return addSection(title, 2);
109
    }
110
    
111
    /**
112
     * Changes the Chapter number.
113
     * @param    number    the new chapter number
114
     * @since 2.1.4
115
     */
116
    public int setAutomaticNumber(int number) {
117 1 1. setAutomaticNumber : negated conditional → NO_COVERAGE
        if (!numberSet) {
118 1 1. setAutomaticNumber : Changed increment from 1 to -1 → NO_COVERAGE
            number++;
119 1 1. setAutomaticNumber : removed call to com/lowagie/text/Chapter::setChapterNumber → NO_COVERAGE
            super.setChapterNumber(number);
120
            numberSet = true;
121
        }
122 1 1. setAutomaticNumber : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE
        return number;
123
    }
124
125
}

Mutations

92

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

95

1.1
Location : addSection
Killed by : none
mutated return of Object value for com/lowagie/text/ChapterAutoNumber::addSection to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

105

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

108

1.1
Location : addSection
Killed by : none
mutated return of Object value for com/lowagie/text/ChapterAutoNumber::addSection to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE

117

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

118

1.1
Location : setAutomaticNumber
Killed by : none
Changed increment from 1 to -1 → NO_COVERAGE

119

1.1
Location : setAutomaticNumber
Killed by : none
removed call to com/lowagie/text/Chapter::setChapterNumber → NO_COVERAGE

122

1.1
Location : setAutomaticNumber
Killed by : none
replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.4.2