source: trunk/src/gcc/libjava/java/sql/SQLException.java@ 2

Last change on this file since 2 was 2, checked in by bird, 23 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 5.9 KB
Line 
1/* SQLException.java -- General SQL exception
2 Copyright (C) 1999, 2000 Free Software Foundation, Inc.
3
4This file is part of GNU Classpath.
5
6GNU Classpath is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU Classpath is distributed in the hope that it will be useful, but
12WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU Classpath; see the file COPYING. If not, write to the
18Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
1902111-1307 USA.
20
21Linking this library statically or dynamically with other modules is
22making a combined work based on this library. Thus, the terms and
23conditions of the GNU General Public License cover the whole
24combination.
25
26As a special exception, the copyright holders of this library give you
27permission to link this library with independent modules to produce an
28executable, regardless of the license terms of these independent
29modules, and to copy and distribute the resulting executable under
30terms of your choice, provided that you also meet, for each linked
31independent module, the terms and conditions of the license of that
32module. An independent module is a module which is not derived from
33or based on this library. If you modify this library, you may extend
34this exception to your version of the library, but you are not
35obligated to do so. If you do not wish to do so, delete this
36exception statement from your version. */
37
38
39package java.sql;
40
41/**
42 * This exception is thrown when a database error occurs.
43 *
44 * @author Aaron M. Renn ([email protected])
45 */
46public class SQLException extends Exception
47{
48
49/*************************************************************************/
50
51/*
52 * Instance Variables
53 */
54
55/**
56 * This is the next exception in the chain
57 * @serialized
58 */
59private SQLException next;
60
61/**
62 * This is the state of the SQL statement at the time of the error.
63 * @serialized
64 */
65private String SQLState;
66
67/**
68 * The vendor error code for this error
69 * @serialized
70 */
71private int vendorCode;
72
73/*************************************************************************/
74
75/**
76 * Static Variables
77 */
78
79/**
80 * This is the serialization UID for this class
81 */
82private static final long serialVersionUID = 2135244094396331484L;
83
84/*************************************************************************/
85
86/*
87 * Constructors
88 */
89
90/**
91 * This method initializes a new instance of <code>SQLException</code>
92 * that does not have a descriptive messages and SQL state, and which
93 * has a vendor error code of 0.
94 */
95public
96SQLException()
97{
98 this(null, null, 0);
99}
100
101/*************************************************************************/
102
103/**
104 * This method initializes a new instance of <code>SQLException</code>
105 * with the specified descriptive error message. The SQL state of this
106 * instance will be <code>null</code> and the vendor error code will be 0.
107 *
108 * @param message A string describing the nature of the error.
109 */
110public
111SQLException(String message)
112{
113 this(message, null, 0);
114}
115
116/*************************************************************************/
117
118/**
119 * This method initializes a new instance of <code>SQLException</code>
120 * with the specified descriptive error message and SQL state string.
121 * The vendor error code of this instance will be 0.
122 *
123 * @param message A string describing the nature of the error.
124 * @param SQLState A string containing the SQL state of the error.
125 */
126public
127SQLException(String message, String SQLState)
128{
129 this(message, SQLState, 0);
130}
131
132/*************************************************************************/
133
134/**
135 * This method initializes a nwe instance of <code>SQLException</code>
136 * with the specified descriptive error message, SQL state string, and
137 * vendor code.
138 *
139 * @param message A string describing the nature of the error.
140 * @param SQLState A string containing the SQL state of the error.
141 * @param vendorCode The vendor error code associated with this error.
142 */
143public
144SQLException(String message, String SQLState, int vendorCode)
145{
146 super(message);
147
148 this.SQLState = SQLState;
149 this.vendorCode = vendorCode;
150}
151
152/*************************************************************************/
153
154/*
155 * Instance Methods
156 */
157
158/**
159 * This method returns the SQLState information associated with this
160 * error. The value returned is a <code>String</code> which is formatted
161 * using the XOPEN SQL state conventions.
162 *
163 * @return The SQL state, which may be <code>null</code>.
164 */
165public String
166getSQLState()
167{
168 return(SQLState);
169}
170
171/*************************************************************************/
172
173/**
174 * This method returns the vendor specific error code associated with
175 * this error.
176 *
177 * @return The vendor specific error code associated with this error.
178 */
179public int
180getErrorCode()
181{
182 return(vendorCode);
183}
184
185/*************************************************************************/
186
187/**
188 * This method returns the exception that is chained to this object.
189 *
190 * @return The exception chained to this object, which may be
191 * <code>null</code>.
192 */
193public SQLException
194getNextException()
195{
196 return(next);
197}
198
199/*************************************************************************/
200
201/**
202 * This method adds a new exception to the end of the chain of exceptions
203 * that are chained to this object.
204 *
205 * @param e The exception to add to the end of the chain.
206 */
207public void
208setNextException(SQLException e)
209{
210 if (e == null)
211 return;
212
213 SQLException list_entry = this;
214 while (list_entry.getNextException() != null)
215 list_entry = list_entry.getNextException();
216
217 list_entry.next = e;
218}
219
220} // class SQLException
221
Note: See TracBrowser for help on using the repository browser.