Or.java

biz/hammurapi/sql/syntax/Or.java

Violations

Inspector Message Severity Location
Java Inspector 048 Copyrights information should be present in each file. 1
Java Inspector 086 Use equals() instead of == or != to compare objects. 1 67:32
Java Inspector 015 Do not change parameter value. For comprehensibility, formal parameters should be final 2 34:25
Java Inspector 073 [java.lang.StringBuffer] In Java 5 use StringBuilder instead of StringBuffer if access is single-threaded, e.g. StringBuffer is used as a local variable . 2 41:17
Java Inspector 082 Parenthesis are redundant. 2 58:36
Java Inspector 089 Undocumented top level type 2 11:1
Java Inspector 089 Undocumented constructor 2 15:9
Java Inspector 089 Undocumented constructor 2 19:9
Java Inspector 089 Undocumented constructor 2 23:9
Java Inspector 089 Undocumented method 2 27:9
Java Inspector 089 Undocumented method 2 31:9
Java Inspector 089 Undocumented method 2 40:9
Java Inspector 089 Undocumented method 2 54:9
Java Inspector 089 Undocumented method 2 62:9
Java Inspector 003 do, while, if, and for statements need a brace enclosed block 3 64:25
Java Inspector 003 do, while, if, and for statements need a brace enclosed block 3 66:25
Java Inspector 003 do, while, if, and for statements need a brace enclosed block 3 68:25
Java Inspector 003 do, while, if, and for statements need a brace enclosed block 3 72:33
Java Inspector 003 do, while, if, and for statements need a brace enclosed block 3 74:25
Java Inspector 025 Avoid hardwired numeric literals. Allowed literals: [1, -1, 0] 3 55:35
Java Inspector 026 Avoid hardwired string literals. Allowed literals: [] 3 46:44
Java Inspector 051 It is good practice to call in any case super() in a constructor. 3 15:9
Java Inspector 051 It is good practice to call in any case super() in a constructor. 3 19:9
Java Inspector 051 It is good practice to call in any case super() in a constructor. 3 23:9

Source code

1package biz.hammurapi.sql.syntax;
2
3import java.io.Serializable;
4import java.sql.PreparedStatement;
5import java.sql.SQLException;
6import java.util.ArrayList;
7import java.util.Arrays;
8import java.util.Iterator;
9import java.util.List;
10
11public class Or implements StatementFragment, Serializable {
12
13 private List fragments = new ArrayList();
14
15 public Or(List fragments) {
16 this.fragments.addAll(fragments);
17 }
18
19 public Or(StatementFragment[] fragments) {
20 this.fragments.addAll(Arrays.asList(fragments));
21 }
22
23 public Or() {
24 // Empty OR.
25 }
26
27 public void add(StatementFragment fragment) {
28 fragments.add(fragment);
29 }
30
31 public int parameterize(PreparedStatement statement, int idx) throws SQLException {
32 Iterator it = fragments.iterator();
33 while (it.hasNext()) {
34 idx = ((StatementFragment) it.next()).parameterize(statement, idx);
35 }
36
37 return idx;
38 }
39
40 public String toSqlString() {
41 StringBuffer ret = new StringBuffer();
42 Iterator it = fragments.iterator();
43 while (it.hasNext()) {
44 ret.append(((StatementFragment) it.next()).toSqlString());
45 if (it.hasNext()) {
46 ret.append(" OR ");
47 }
48
49 }
50
51 return ret.toString();
52 }
53
54 public int hashCode() {
55 final int prime = 31;
56 int result = 1;
57 result = prime * result
58 + ((fragments == null) ? 0 : fragments.hashCode());
59 return result;
60 }
61
62 public boolean equals(Object obj) {
63 if (this == obj)
64 return true;
65 if (obj == null)
66 return false;
67 if (getClass() != obj.getClass())
68 return false;
69 final Or other = (Or) obj;
70 if (fragments == null) {
71 if (other.fragments != null)
72 return false;
73 } else if (!fragments.equals(other.fragments))
74 return false;
75 return true;
76 }
77}
78