KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jfox > jdbc > datasource > PoolableConnection


1 /* JFox, the OpenSource J2EE Application Server
2  *
3  * Distributable under GNU LGPL license by gun.org
4  * more details please visit http://www.huihoo.org/jfox
5  */

6
7 package org.jfox.jdbc.datasource;
8
9 import java.sql.CallableStatement JavaDoc;
10 import java.sql.Connection JavaDoc;
11 import java.sql.DatabaseMetaData JavaDoc;
12 import java.sql.PreparedStatement JavaDoc;
13 import java.sql.SQLException JavaDoc;
14 import java.sql.SQLWarning JavaDoc;
15 import java.sql.Savepoint JavaDoc;
16 import java.sql.Statement JavaDoc;
17 import java.util.Map JavaDoc;
18
19 import org.jfox.jdbc.LoggablePreparedStatement;
20 import org.jfox.pool.AbstractPoolableObject;
21
22 /**
23  * @author <a HREF="mailto:young_yy@hotmail.com">Young Yang</a>
24  */

25
26 public class PoolableConnection extends AbstractPoolableObject implements Connection JavaDoc {
27     private Connection JavaDoc conn;
28     private ConnectionPool pool;
29
30     void setConnection(Connection JavaDoc conn) {
31         this.conn = conn;
32     }
33
34     Connection JavaDoc getConnection() {
35         return conn;
36     }
37
38     void setPool(ConnectionPool pool) {
39         this.pool = pool;
40     }
41
42     public void rollback(Savepoint JavaDoc savepoint) throws SQLException JavaDoc {
43         checkClosed();
44         conn.rollback(savepoint);
45     }
46
47     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, String JavaDoc columnNames[]) throws SQLException JavaDoc {
48         checkClosed();
49         return new LoggablePreparedStatement(conn.prepareStatement(sql, columnNames), sql);
50     }
51
52     public CallableStatement JavaDoc prepareCall(String JavaDoc sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException JavaDoc {
53         checkClosed();
54         return conn.prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability);
55     }
56
57     public void rollback() throws SQLException JavaDoc {
58         conn.rollback();
59     }
60
61     public DatabaseMetaData JavaDoc getMetaData() throws SQLException JavaDoc {
62         checkClosed();
63         return conn.getMetaData();
64     }
65
66     public SQLWarning JavaDoc getWarnings() throws SQLException JavaDoc {
67         checkClosed();
68         return conn.getWarnings();
69     }
70
71     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, int columnIndexes[]) throws SQLException JavaDoc {
72         checkClosed();
73         return new LoggablePreparedStatement(conn.prepareStatement(sql, columnIndexes), sql);
74     }
75
76     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException JavaDoc {
77         checkClosed();
78         return new LoggablePreparedStatement(conn.prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability), sql);
79     }
80
81     public boolean getAutoCommit() throws SQLException JavaDoc {
82         checkClosed();
83         return conn.getAutoCommit();
84     }
85
86     public String JavaDoc nativeSQL(String JavaDoc sql) throws SQLException JavaDoc {
87         checkClosed();
88         return conn.nativeSQL(sql);
89     }
90
91     public void setTransactionIsolation(int level) throws SQLException JavaDoc {
92         checkClosed();
93         conn.setTransactionIsolation(level);
94     }
95
96     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql) throws SQLException JavaDoc {
97         checkClosed();
98         return new LoggablePreparedStatement(conn.prepareStatement(sql), sql);
99     }
100
101     public int getHoldability() throws SQLException JavaDoc {
102         checkClosed();
103         return conn.getHoldability();
104     }
105
106     public void clearWarnings() throws SQLException JavaDoc {
107         checkClosed();
108         conn.clearWarnings();
109     }
110
111     public Savepoint JavaDoc setSavepoint() throws SQLException JavaDoc {
112         checkClosed();
113         return conn.setSavepoint();
114     }
115
116     public Map JavaDoc getTypeMap() throws SQLException JavaDoc {
117         checkClosed();
118         return conn.getTypeMap();
119     }
120
121     public void setTypeMap(Map JavaDoc map) throws SQLException JavaDoc {
122         checkClosed();
123         conn.setTypeMap(map);
124     }
125
126     public void commit() throws SQLException JavaDoc {
127         conn.commit();
128     }
129
130     public void setCatalog(String JavaDoc catalog) throws SQLException JavaDoc {
131         checkClosed();
132         conn.setCatalog(catalog);
133     }
134
135     public boolean isClosed() throws SQLException JavaDoc {
136         return !isAvailable();
137     }
138
139     public void setHoldability(int holdability) throws SQLException JavaDoc {
140         checkClosed();
141         conn.setHoldability(holdability);
142     }
143
144     public String JavaDoc getCatalog() throws SQLException JavaDoc {
145         checkClosed();
146         return conn.getCatalog();
147     }
148
149     public void setReadOnly(boolean readOnly) throws SQLException JavaDoc {
150         checkClosed();
151         conn.setReadOnly(readOnly);
152     }
153
154     public Savepoint JavaDoc setSavepoint(String JavaDoc name) throws SQLException JavaDoc {
155         checkClosed();
156         return conn.setSavepoint(name);
157     }
158
159     public void releaseSavepoint(Savepoint JavaDoc savepoint) throws SQLException JavaDoc {
160         checkClosed();
161         conn.releaseSavepoint(savepoint);
162     }
163
164     public CallableStatement JavaDoc prepareCall(String JavaDoc sql) throws SQLException JavaDoc {
165         checkClosed();
166         return conn.prepareCall(sql);
167     }
168
169     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, int resultSetType, int resultSetConcurrency) throws SQLException JavaDoc {
170         checkClosed();
171         return new LoggablePreparedStatement(conn.prepareStatement(sql, resultSetType, resultSetConcurrency), sql);
172     }
173
174     public void close() throws SQLException JavaDoc {
175         checkClosed();
176         pool.restoreObject(this);
177     }
178
179     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, int autoGeneratedKeys) throws SQLException JavaDoc {
180         checkClosed();
181         return new LoggablePreparedStatement(conn.prepareStatement(sql, autoGeneratedKeys), sql);
182     }
183
184     public int getTransactionIsolation() throws SQLException JavaDoc {
185         checkClosed();
186         return conn.getTransactionIsolation();
187     }
188
189     public CallableStatement JavaDoc prepareCall(String JavaDoc sql, int resultSetType, int resultSetConcurrency) throws SQLException JavaDoc {
190         checkClosed();
191         return conn.prepareCall(sql, resultSetType, resultSetConcurrency);
192     }
193
194     public boolean isReadOnly() throws SQLException JavaDoc {
195         checkClosed();
196         return conn.isReadOnly();
197     }
198
199     public Statement JavaDoc createStatement() throws SQLException JavaDoc {
200         checkClosed();
201         return conn.createStatement();
202     }
203
204     public void setAutoCommit(boolean autoCommit) throws SQLException JavaDoc {
205         checkClosed();
206         conn.setAutoCommit(autoCommit);
207     }
208
209     public Statement JavaDoc createStatement(int resultSetType, int resultSetConcurrency) throws SQLException JavaDoc {
210         checkClosed();
211         return conn.createStatement(resultSetType, resultSetConcurrency);
212     }
213
214     public Statement JavaDoc createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException JavaDoc {
215         checkClosed();
216         return conn.createStatement(resultSetType, resultSetConcurrency, resultSetHoldability);
217     }
218
219     private void checkClosed() throws SQLException JavaDoc {
220         if(!isAvailable()) {
221             throw new SQLException JavaDoc("connection closed");
222         }
223     }
224
225     public static void main(String JavaDoc[] args) {
226
227     }
228 }
Popular Tags