Clover Coverage Report
Coverage timestamp: Fri May 24 2013 13:47:27 UTC
../../../../../../img/srcFileCovDistChart10.png 0% of files have more coverage
26   100   16   3.71
18   57   0.62   7
7     2.29  
1    
 
  ChangedRuleListVo       Line # 31 26 16 100% 1.0
 
  (8)
 
1    /* This file is part of the project "Hilbert II" - http://www.qedeq.org
2    *
3    * Copyright 2000-2013, 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   
16    package org.qedeq.kernel.se.dto.module;
17   
18    import java.util.ArrayList;
19    import java.util.List;
20   
21    import org.qedeq.base.utility.EqualsUtility;
22    import org.qedeq.kernel.se.base.module.ChangedRule;
23    import org.qedeq.kernel.se.base.module.ChangedRuleList;
24   
25   
26    /**
27    * List of changed rules.
28    *
29    * @author Michael Meyling
30    */
 
31    public class ChangedRuleListVo implements ChangedRuleList {
32   
33    /** Contains all list elements. */
34    private final List list;
35   
36    /**
37    * Constructs an empty list of proofs.
38    */
 
39  64 toggle public ChangedRuleListVo() {
40  64 this.list = new ArrayList();
41   
42    }
43   
44    /**
45    * Add changed rule to this list.
46    *
47    * @param rule Rule change to add.
48    */
 
49  181 toggle public final void add(final ChangedRule rule) {
50  181 list.add(rule);
51    }
52   
 
53  1412 toggle public final int size() {
54  1412 return list.size();
55    }
56   
 
57  1843 toggle public final ChangedRule get(final int index) {
58  1843 return (ChangedRule) list.get(index);
59    }
60   
 
61  60 toggle public boolean equals(final Object obj) {
62  60 if (!(obj instanceof ChangedRuleListVo)) {
63  7 return false;
64    }
65  53 final ChangedRuleListVo otherList = (ChangedRuleListVo) obj;
66  53 if (size() != otherList.size()) {
67  11 return false;
68    }
69  106 for (int i = 0; i < size(); i++) {
70  68 if (!EqualsUtility.equals(get(i), otherList.get(i))) {
71  4 return false;
72    }
73    }
74  38 return true;
75    }
76   
 
77  62 toggle public int hashCode() {
78  62 int hash = 0;
79  174 for (int i = 0; i < size(); i++) {
80  112 hash = hash ^ (i + 1);
81  112 if (get(i) != null) {
82  110 hash = hash ^ get(i).hashCode();
83    }
84    }
85  62 return hash;
86    }
87   
 
88  48 toggle public String toString() {
89  48 final StringBuffer buffer = new StringBuffer("Changed rules:\n");
90  145 for (int i = 0; i < size(); i++) {
91  97 if (i != 0) {
92  52 buffer.append("\n");
93    }
94  97 buffer.append((i + 1) + ":\t");
95  97 buffer.append(get(i) != null ? get(i).toString() : null);
96    }
97  48 return buffer.toString();
98    }
99   
100    }