KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > derby > iapi > jdbc > EngineConnection


1 /*
2
3    Derby - Class org.apache.derby.iapi.jdbc.EngineConnection
4
5    Licensed to the Apache Software Foundation (ASF) under one or more
6    contributor license agreements. See the NOTICE file distributed with
7    this work for additional information regarding copyright ownership.
8    The ASF licenses this file to you under the Apache License, Version 2.0
9    (the "License"); you may not use this file except in compliance with
10    the License. You may obtain a copy of the License at
11
12       http://www.apache.org/licenses/LICENSE-2.0
13
14    Unless required by applicable law or agreed to in writing, software
15    distributed under the License is distributed on an "AS IS" BASIS,
16    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17    See the License for the specific language governing permissions and
18    limitations under the License.
19
20  */

21 package org.apache.derby.iapi.jdbc;
22
23 import java.sql.Connection JavaDoc;
24 import java.sql.PreparedStatement JavaDoc;
25 import java.sql.SQLException JavaDoc;
26 import java.sql.SQLWarning JavaDoc;
27
28 import org.apache.derby.iapi.reference.SQLState;
29 import org.apache.derby.iapi.sql.execute.ExecutionContext;
30 import org.apache.derby.impl.jdbc.Util;
31
32 /**
33  * Additional methods the embedded engine exposes on its Connection object
34  * implementations. An internal api only, mainly for the network
35  * server. Allows consistent interaction between EmbedConnections
36  * and BrokeredConnections.
37  *
38  */

39 public interface EngineConnection extends Connection JavaDoc {
40
41     /**
42      * Set the DRDA identifier for this connection.
43      */

44     public void setDrdaID(String JavaDoc drdaID);
45
46     /**
47      * Set the transaction isolation level that will be used for the
48      * next prepare. Used by network server to implement DB2 style
49      * isolation levels.
50      * Note the passed in level using the Derby constants from
51      * ExecutionContext and not the JDBC constants from java.sql.Connection.
52      * @param level Isolation level to change to. level is the DB2 level
53      * specified in the package names which happen to correspond
54      * to our internal levels. If
55      * level == ExecutionContext.UNSPECIFIED_ISOLATION,
56      * the statement won't be prepared with an isolation level.
57      *
58      *
59      */

60     public void setPrepareIsolation(int level) throws SQLException JavaDoc;
61
62     /**
63      * Return prepare isolation
64      */

65     public int getPrepareIsolation()
66         throws SQLException JavaDoc;
67
68     /**
69      * Prepare a statement with holdability.
70      * Identical to JDBC 3.0 method, to allow holdabilty
71      * to be supported in JDK 1.3 by the network server,
72      * e.g. when the client is jdk 1.4 or above.
73      * Can be removed once JDK 1.3 is no longer supported.
74      */

75     public PreparedStatement JavaDoc prepareStatement(String JavaDoc sql, int resultSetType,
76             int resultSetConcurrency, int resultSetHoldability)
77             throws SQLException JavaDoc;
78
79     /**
80      * Get the holdability of the connection.
81      * Identical to JDBC 3.0 method, to allow holdabilty
82      * to be supported in JDK 1.3 by the network server,
83      * e.g. when the client is jdk 1.4 or above.
84      * Can be removed once JDK 1.3 is no longer supported.
85      */

86     public int getHoldability() throws SQLException JavaDoc;
87     
88     /**
89      * Add a SQLWarning to this Connection object.
90      * @param newWarning Warning to be added, will be chained to any
91      * existing warnings.
92      */

93     public void addWarning(SQLWarning JavaDoc newWarning)
94         throws SQLException JavaDoc;
95
96 }
97
Popular Tags