1 package org.apache.torque.adapter;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.sql.Connection;
23 import java.sql.SQLException;
24 import java.sql.Statement;
25
26 /***
27 * This code should be used for an Informix database pool.
28 *
29 * @author <a href="mailto:jon@latchkey.com">Jon S. Stevens</a>
30 * @author <a href="mailto:bpm@ec-group.com">Brian P Millett</a>
31 * @version $Id: DBInformix.java 473821 2006-11-11 22:37:25Z tv $
32 */
33 public class DBInformix extends AbstractDBAdapter
34 {
35 /***
36 * Serial version
37 */
38 private static final long serialVersionUID = 2599963509284952957L;
39
40 /***
41 * Empty constructor.
42 */
43 protected DBInformix()
44 {
45 }
46
47 /***
48 * This method is used to ignore case. Problem is that Informix
49 * does not have an UPPER function. So the best would be to do
50 * nothing.
51 *
52 * @param in The string to transform to upper case.
53 * @return The upper case string.
54 */
55 public String toUpperCase(String in)
56 {
57 return in;
58 }
59
60 /***
61 * This method is used to ignore case. Problem is that Informix
62 * does not have an UPPER function. So the best would be to do
63 * nothing.
64 *
65 * @param in The string whose case to ignore.
66 * @return The string in a case that can be ignored.
67 */
68 public String ignoreCase(String in)
69 {
70 return in;
71 }
72
73 /***
74 * @see org.apache.torque.adapter.DB#getIDMethodType()
75 */
76 public String getIDMethodType()
77 {
78 return NO_ID_METHOD;
79 }
80
81 /***
82 * @see org.apache.torque.adapter.DB#getIDMethodSQL(Object obj)
83 */
84 public String getIDMethodSQL(Object obj)
85 {
86 return null;
87 }
88
89 /***
90 * The method is used to lock a table.
91 *
92 * @param con The JDBC connection to use.
93 * @param table The name of the table to lock.
94 * @exception SQLException No Statement could be created or executed.
95 */
96 public void lockTable(Connection con, String table) throws SQLException
97 {
98 Statement statement = con.createStatement();
99
100 StringBuffer stmt = new StringBuffer();
101 stmt.append("LOCK TABLE ")
102 .append(table)
103 .append(" IN EXCLUSIVE MODE");
104
105 statement.executeQuery(stmt.toString());
106 }
107
108 /***
109 * The method is used to unlock a table.
110 *
111 * @param con The JDBC connection to use.
112 * @param table The name of the table to unlock.
113 * @exception SQLException No Statement could be created or executed.
114 */
115 public void unlockTable(Connection con, String table) throws SQLException
116 {
117
118
119
120 con.commit();
121 }
122 }