summaryrefslogtreecommitdiff
path: root/java/sql
diff options
context:
space:
mode:
authorEric Blake <ebb9@byu.net>2002-02-24 04:25:15 +0000
committerEric Blake <ebb9@byu.net>2002-02-24 04:25:15 +0000
commita3f60f71365174676e1302f0b201f5772849ffd3 (patch)
tree493dd1be8064241b1d269916046f7c1f1247b603 /java/sql
parent70f6e1ec80b4ffc5370564b2710ee194054da42f (diff)
downloadclasspath-a3f60f71365174676e1302f0b201f5772849ffd3.tar.gz
2002-02-23 Eric Blake <ebb9@email.byu.edu>
* java/awt/AWTError.java: Update to 1.4. * java/awt/AWTException.java: Ditto. * java/awt/IllegalComponentStateException.java: Ditto. * java/awt/datatransfer/MimeTypeParseException.java: Ditto. * java/awt/datatransfer/UnsupportedFlavorException.java: Ditto. * java/awt/geom/IllegalPathStateException.java: Ditto. * java/awt/geom/NoninvertibleTransformException.java: Ditto. * java/awt/print/PrinterAbortException.java: Ditto. * java/awt/print/PrinterException.java: Ditto. * java/awt/print/PrinterIOException.java: Ditto. * java/beans/IntrospectionException.java: Ditto. * java/beans/PropertyVetoException.java: Ditto. * java/io/CharConversionException.java: Ditto. * java/io/EOFException.java: Ditto. * java/io/FileNotFoundException.java: Ditto. * java/io/InterruptedIOException.java: Ditto. * java/io/InvalidClassException.java: Ditto. * java/io/InvalidObjectException.java: Ditto. * java/io/IOException.java: Ditto. * java/io/NotActiveException.java: Ditto. * java/io/NotSerializableException.java: Ditto. * java/io/ObjectStreamException.java: Ditto. * java/io/OptionalDataException.java: Ditto. * java/io/StreamCorruptedException.java: Ditto. * java/io/SyncFailedException.java: Ditto. * java/io/UnsupportedEncodingException.java: Ditto. * java/io/UTFDataFormatException.java: Ditto. * java/io/WriteAbortedException.java: Ditto. * java/lang/AbstractMethodError.java: Ditto. * java/lang/ArithmeticException.java: Ditto. * java/lang/ArrayIndexOutOfBoundsException.java: Ditto. * java/lang/ArrayStoreException.java: Ditto. * java/lang/AssertionError.java: Ditto. * java/lang/ClassCastException.java: Ditto. * java/lang/ClassCircularityError.java: Ditto. * java/lang/ClassFormatError.java: Ditto. * java/lang/ClassNotFoundException.java: Ditto. * java/lang/CloneNotSupportedException.java: Ditto. * java/lang/Exception.java: Ditto. * java/lang/ExceptionInInitializerError.java: Ditto. * java/lang/IllegalAccessError.java: Ditto. * java/lang/IllegalAccessException.java: Ditto. * java/lang/IllegalArgumentException.java: Ditto. * java/lang/IllegalMonitorStateException.java: Ditto. * java/lang/IllegalStateException.java: Ditto. * java/lang/IllegalThreadStateException.java: Ditto. * java/lang/IncompatibleClassChangeError.java: Ditto. * java/lang/IndexOutOfBoundsException.java: Ditto. * java/lang/InstantiationError.java: Ditto. * java/lang/InstantiationException.java: Ditto. * java/lang/InternalError.java: Ditto. * java/lang/InterruptedException.java: Ditto. * java/lang/LinkageError.java: Ditto. * java/lang/NegativeArraySizeException.java: Ditto. * java/lang/NoClassDefFoundError.java: Ditto. * java/lang/NoSuchFieldError.java: Ditto. * java/lang/NoSuchFieldException.java: Ditto. * java/lang/NoSuchMethodError.java: Ditto. * java/lang/NoSuchMethodException.java: Ditto. * java/lang/NullPointerException.java: Ditto. * java/lang/NumberFormatException.java: Ditto. * java/lang/OutOfMemoryError.java: Ditto. * java/lang/RuntimeException.java: Ditto. * java/lang/SecurityException.java: Ditto. * java/lang/StackOverflowError.java: Ditto. * java/lang/StringIndexOutOfBoundsException.java: Ditto. * java/lang/ThreadDeath.java: Ditto. * java/lang/UnknownError.java: Ditto. * java/lang/UnsatisfiedLinkError.java: Ditto. * java/lang/UnsupportedClassVersionError.java: Ditto. * java/lang/UnsupportedOperationException.java: Ditto. * java/lang/VerifyError.java: Ditto. * java/lang/VirtualMachineError.java: Ditto. * java/lang/Void.java: Ditto. * java/lang/reflect/InvocationTargetException.java: Ditto. * java/lang/reflect/UndeclaredThrowableException.java: Ditto. * java/net/BindException.java: Ditto. * java/net/ConnectException.java: Ditto. * java/net/MalformedURLException.java: Ditto. * java/net/NoRouteToHostException.java: Ditto. * java/net/ProtocolException.java: Ditto. * java/net/SocketException.java: Ditto. * java/net/UnknownHostException.java: Ditto. * java/net/UnknownServiceException.java: Ditto. * java/rmi/AccessException.java: Ditto. * java/rmi/AlreadyBoundException.java: Ditto. * java/rmi/ConnectException.java: Ditto. * java/rmi/ConnectIOException.java: Ditto. * java/rmi/MarshalException.java: Ditto. * java/rmi/NoSuchObjectException.java: Ditto. * java/rmi/NotBoundException.java: Ditto. * java/rmi/RemoteException.java: Ditto. * java/rmi/RMISecurityException.java: Ditto. * java/rmi/ServerException.java: Ditto. * java/rmi/ServerRuntimeException.java: Ditto. * java/rmi/StubNotFoundException.java: Ditto. * java/rmi/UnexpectedException.java: Ditto. * java/rmi/UnknownHostException.java: Ditto. * java/rmi/UnmarshalException.java: Ditto. * java/rmi/activation/ActivateFailedException.java: Ditto. * java/rmi/activation/ActivationException.java: Ditto. * java/rmi/activation/UnknownGroupException.java: Ditto. * java/rmi/activation/UnknownObjectException.java: Ditto. * java/rmi/server/ExportException.java: Ditto. * java/rmi/server/ServerCloneException.java: Ditto. * java/rmi/server/ServerNotActiveException.java: Ditto. * java/rmi/server/SkeletonMismatchException.java: Ditto. * java/rmi/server/SkeletonNotFoundException.java: Ditto. * java/rmi/server/SocketSecurityException.java: Ditto. * java/security/AccessControlException.java: Ditto. * java/security/DigestException.java: Ditto. * java/security/GeneralSecurityException.java: Ditto. * java/security/InvalidAlgorithmParameterException.java: Ditto. * java/security/InvalidKeyException.java: Ditto. * java/security/InvalidParameterException.java: Ditto. * java/security/KeyException.java: Ditto. * java/security/KeyManagementException.java: Ditto. * java/security/KeyStoreException.java: Ditto. * java/security/NoSuchAlgorithmException.java: Ditto. * java/security/NoSuchProviderException.java: Ditto. * java/security/PrivilegedActionException.java: Ditto. * java/security/ProviderException.java: Ditto. * java/security/SignatureException.java: Ditto. * java/security/UnrecoverableKeyException.java: Ditto. * java/security/acl/AclNotFoundException.java: Ditto. * java/security/acl/LastOwnerException.java: Ditto. * java/security/acl/NotOwnerException.java: Ditto. * java/security/cert/CertificateEncodingException.java: Ditto. * java/security/cert/CertificateException.java: Ditto. * java/security/cert/CertificateExpiredException.java: Ditto. * java/security/cert/CertificateNotYetValidException.java: Ditto. * java/security/cert/CertificateParsingException.java: Ditto. * java/security/cert/CRLException.java: Ditto. * java/security/spec/InvalidKeySpecException.java: Ditto. * java/security/spec/InvalidParameterSpecException.java: Ditto. * java/sql/BatchUpdateException.java: Ditto. * java/sql/DataTruncation.java: Ditto. * java/sql/SQLException.java: Ditto. * java/sql/SQLWarning.java: Ditto. * java/text/ParseException.java: Ditto. * java/util/MissingResourceException.java: Ditto. * java/util/jar/JarException.java: Ditto. * java/util/prefs/BackingStoreException.java: Ditto. * java/util/prefs/InvalidPreferencesFormatException.java: Ditto. * java/util/zip/DataFormatException.java: Ditto. * java/util/zip/ZipException.java: Ditto. * java/awt/Makefile.am (EXTRA_DIST): Add FontFormatException.java and HeadlessException.java. * java/awt/FontFormatException.java: New file. * java/awt/HeadlessException.java: New file. * java/awt/color/Makefile.am (EXTRA_DIST): Add CMMException.java and ProfileDataException.java. * java/awt/color/CMMException.java: New file. * java/awt/color/ProfileDataException.java: New file. * java/awt/image/Makefile.am (EXTRA_DIST): Add ImagingOpException.java and RasterFormatException.java. * java/awt/image/ImagingOpException.java: New file. * java/awt/image/RasterFormatException.java: New file. * java/net/Makefile.am (EXTRA_DIST): Add PortUnreachableException.java, SocketTimeoutException.java and URISyntaxException.java. * java/net/PortUnreachableException.java: New file. * java/net/SocketTimeoutException.java: New file. * java/net/URISyntaxException.java: New file. * java/security/cert/Makefile.am (EXTRA_DIST): Add CertPathBuilderException.java, CertPathValidatorException.java, and CertStoreException.java. * java/security/cert/CertPathBuilderException.java: New file. * java/security/cert/CertPathValidatorException.java: New file. * java/security/cert/CertStoreException.java: New file. * vm/reference/java/lang/Throwable.java (toString): Use getLocalizedMessage(). * ChangeLog: Fix spelling error.
Diffstat (limited to 'java/sql')
-rw-r--r--java/sql/BatchUpdateException.java245
-rw-r--r--java/sql/DataTruncation.java288
-rw-r--r--java/sql/SQLException.java314
-rw-r--r--java/sql/SQLWarning.java208
4 files changed, 454 insertions, 601 deletions
diff --git a/java/sql/BatchUpdateException.java b/java/sql/BatchUpdateException.java
index 04478ee4b..ead198e99 100644
--- a/java/sql/BatchUpdateException.java
+++ b/java/sql/BatchUpdateException.java
@@ -1,5 +1,5 @@
-/* BatchUpdateException.java -- Exception for batch oriented SQL errors
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* BatchUpdateException.java -- exception for batch oriented SQL errors
+ Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -39,142 +39,109 @@ exception statement from your version. */
package java.sql;
/**
- * This class extends <code>SQLException</code> to count the successful
- * updates in each statement in a batch that was successfully updated prior
- * to the error.
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- */
-public class BatchUpdateException extends SQLException
-{
-
-/*************************************************************************/
-
-/*
- * Instance Variables
- */
-
-/**
- * This is the array of update counts for the commands which completed
- * successfully prior to the error.
- * @serialized
- */
-private int[] updateCounts;
-
-/*************************************************************************/
-
-/*
- * Constructors
- */
-
-/**
- * This method initializes a new instance of <code>BatchUpdateException</code>
- * with no descriptive error message. The SQL state and update count will
- * be initialized to <code>null</code> and the vendor specific error code will
- * initialized to 0.
- */
-public
-BatchUpdateException()
-{
- super();
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>BatchUpdateException</code>
- * with the specified update count information and no descriptive error
- * message. This SQL state will be initialized to <code>null</code> and
- * the vendor specific error code will be initialized to 0.
- *
- * @param updateCounts The update count array.
- */
-public
-BatchUpdateException(int[] updateCounts)
-{
- super();
-
- this.updateCounts = updateCounts;
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>BatchUpdateException</code>
- * with the specified descriptive error message and update count information.
- * The SQL state will be initialized to <code>null</code> and the vendor
- * specific error code will be initialized to 0.
- *
- * @param message The descriptive error message.
- * @param updateCounts The update count information for this error.
- */
-public
-BatchUpdateException(String message, int[] updateCounts)
-{
- super(message);
-
- this.updateCounts = updateCounts;
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>BatchUpdateException</code>
- * with the specified descriptive error message, SQL state, and update count
- * information. The vendor specific error code will be initialized to 0.
- *
- * @param message The descriptive error message.
- * @param SQLState The SQL state information for this error.
- * @param updateCounts The update count information for this error.
- */
-public
-BatchUpdateException(String message, String SQLState, int[] updateCounts)
-{
- super(message, SQLState);
-
- this.updateCounts = updateCounts;
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>BatchUpdateException</code>
- * with the specified descriptive error message, SQL state, vendor
- * specific error code and update count information.
- *
- * @param message The descriptive error message.
- * @param SQLState The SQL state information for this error.
- * @param vendorCode The vendor specific error code for this error.
- * @param updateCounts The update count information for this error.
- */
-public
-BatchUpdateException(String message, String SQLState, int vendorCode,
- int[] updateCounts)
-{
- super(message, SQLState, vendorCode);
-
- this.updateCounts = updateCounts;
-}
-
-/*************************************************************************/
-
-/*
- * Instance Methods
+ * This class extends <code>SQLException</code> to count the successful
+ * updates in each statement in a batch that was successfully updated prior
+ * to the error. The driver may continue to process batch commands, in which
+ * case those commands also have an entry in the array. So, to tell which
+ * command failed, search for <code>Statement.EXECUTE_FAILED</code>.
+ *
+ * @author Aaron M. Renn (arenn@urbanophile.com)
+ * @since 1.2
+ * @status updated to 1.4
*/
-
-/**
- * This method returns the update count information for this error. If
- * not <code>null</code> this is an array of <code>int</code>'s that are
- * the update accounts for each command that was successfully executed.
- * The array elements are in the order that the commands were executed.
- *
- * @return The update count information, which may be <code>null</code>.
- */
-public int[]
-getUpdateCounts()
+public class BatchUpdateException extends SQLException
{
- return(updateCounts);
-}
-
+ /**
+ * Compatible with JDK 1.2+.
+ */
+ private static final long serialVersionUID = 5977529877145521757L;
+
+ /**
+ * This is the array of update counts for the commands which completed
+ * successfully prior to the error.
+ *
+ * @serial the outcome of the batch execution
+ */
+ private final int[] updateCounts;
+
+ /**
+ * Create a new instance with no descriptive error message. The SQL state
+ * and update count will be initialized to <code>null</code> and the
+ * vendor specific error code will initialized to 0.
+ */
+ public BatchUpdateException()
+ {
+ this(null, null, 0, null);
+ }
+
+ /**
+ * Create a new instance with the specified update count information and
+ * no descriptive error message. This SQL state will be initialized to
+ * <code>null</code> and the vendor specific error code will be initialized
+ * to 0.
+ *
+ * @param updateCounts the update count array
+ */
+ public BatchUpdateException(int[] updateCounts)
+ {
+ this(null, null, 0, updateCounts);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message and
+ * update count information. The SQL state will be initialized to
+ * <code>null</code> and the vendor specific error code will be
+ * initialized to 0.
+ *
+ * @param message the descriptive error message
+ * @param updateCounts the update count information for this error
+ */
+ public BatchUpdateException(String message, int[] updateCounts)
+ {
+ this(message, null, 0, updateCounts);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message,
+ * SQL state, and update count information. The vendor specific error
+ * code will be initialized to 0.
+ *
+ * @param message the descriptive error message
+ * @param state the SQL state information for this error
+ * @param updateCounts the update count information for this error
+ */
+ public BatchUpdateException(String message, String state,
+ int[] updateCounts)
+ {
+ this(message, state, 0, updateCounts);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message,
+ * SQL state, vendor specific error code and update count information.
+ *
+ * @param message the descriptive error message
+ * @param state the SQL state information for this error
+ * @param vendorCode the vendor specific error code for this error
+ * @param updateCounts the update count information for this error
+ */
+ public BatchUpdateException(String message, String state, int vendorCode,
+ int[] updateCounts)
+ {
+ super(message, state, vendorCode);
+ this.updateCounts = updateCounts;
+ }
+
+ /**
+ * Get the update count information for this error. If not
+ * <code>null</code>, this is an array of <code>int</code>'s that are
+ * the update accounts for each command that was successfully executed.
+ * The array elements are in the order that the commands were executed.
+ *
+ * @return the update count information, which may be <code>null</code>
+ */
+ public int[] getUpdateCounts()
+ {
+ return updateCounts;
+ }
} // class BatchUpdateException
-
diff --git a/java/sql/DataTruncation.java b/java/sql/DataTruncation.java
index 0cb67ae24..fb4035cb4 100644
--- a/java/sql/DataTruncation.java
+++ b/java/sql/DataTruncation.java
@@ -1,5 +1,5 @@
-/* DataTruncation.java -- Warning when data has been truncated.
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* DataTruncation.java -- warning when data has been truncated
+ Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -39,169 +39,125 @@ exception statement from your version. */
package java.sql;
/**
- * This exception is thrown when a piece of data is unexpectedly
- * truncated in JDBC.
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- */
-public class DataTruncation extends SQLWarning
-{
-
-/*************************************************************************/
-
-/*
- * Instance Variables
- */
-
-/**
- * The original size of the data.
- * @serialized
- */
-private int dataSize;
-
-/**
- * The index of the parameter or column whose value was truncated.
- * @serialized
- */
-private int index;
-
-/**
- * Indicates whether or not a parameter value was truncated.
- * @serialized
- */
-private boolean parameter;
-
-/**
- * Indicates whether or not a data column value was truncated.
- * @serialized
- */
-private boolean read;
-
-/**
- * This is the size of the data after truncation.
- * @serialized
- */
-private int transferSize;
-
-/*************************************************************************/
-
-/**
- * Static Variables
- */
-
-/**
- * This is the serialization UID for this class
- */
-private static final long serialVersionUID = 6464298989504059473L;
-
-/*************************************************************************/
-
-/*
- * Constructors
+ * This exception is thrown when a piece of data is unexpectedly
+ * truncated in JDBC. This has an SQLstate of <code>01004</code>.
+ *
+ * @author Aaron M. Renn (arenn@urbanophile.com)
+ * @status updated to 1.4
*/
-
-/**
- * This method initializes a new instance of <code>DataTruncation</code>
- * with the specified values. The descriptive error message for this
- * exception will be "Data truncation", the SQL state will be "01004"
- * and the vendor specific error code will be set to 0.
- *
- * @param index The index of the parameter or column that was truncated.
- * @param parameter <code>true</code> if a parameter was truncated,
- * <code>false</code> otherwise.
- * @param read <code>true</code> if a data column was truncated,
- * <code>false</code> otherwise.
- * @param dataSize The original size of the data.
- * @param transferSize The size of the data after truncation.
- */
-public
-DataTruncation(int index, boolean parameter, boolean read, int dataSize,
- int transferSize)
-{
- super("Data truncation", "01004");
-
- this.index = index;
- this.parameter = parameter;
- this.read = read;
- this.dataSize = dataSize;
- this.transferSize = transferSize;
-}
-
-/*************************************************************************/
-
-/*
- * Instance Methods
- */
-
-/**
- * This method returns the index of the column or parameter that was
- * truncated.
- *
- * @return The index of the column or parameter that was truncated.
- */
-public int
-getIndex()
-{
- return(index);
-}
-
-/*************************************************************************/
-
-/**
- * This method determines whether or not it was a parameter that was
- * truncated.
- *
- * @return <code>true</code> if a parameter was truncated, <code>false</code>
- * otherwise.
- */
-public boolean
-getParameter()
-{
- return(parameter);
-}
-
-/*************************************************************************/
-
-/**
- * This method determines whether or not it was a column that was
- * truncated.
- *
- * @return <code>true</code> if a column was truncated, <code>false</code>
- * otherwise.
- */
-public boolean
-getRead()
-{
- return(read);
-}
-
-/*************************************************************************/
-
-/**
- * This method returns the original size of the parameter or column that
- * was truncated.
- *
- * @return The original size of the parameter or column that was truncated.
- */
-public int
-getDataSize()
-{
- return(dataSize);
-}
-
-/*************************************************************************/
-
-/**
- * This method returns the size of the parameter or column after it was
- * truncated.
- *
- * @return The size of the parameter or column after it was truncated.
- */
-public int
-getTransferSize()
+public class DataTruncation extends SQLWarning
{
- return(transferSize);
-}
-
+ /**
+ * Compatible with JDK 1.1+.
+ */
+ private static final long serialVersionUID = 6464298989504059473L;
+
+ /**
+ * The original size of the data.
+ *
+ * @serial the original data size
+ */
+ private final int dataSize;
+
+ /**
+ * The index of the parameter or column whose value was truncated.
+ *
+ * @serial the index that was truncated
+ */
+ private final int index;
+
+ /**
+ * Indicates whether or not a parameter value was truncated.
+ *
+ * @serial true if a parameter was truncated
+ */
+ private final boolean parameter;
+
+ /**
+ * Indicates whether or not a data column value was truncated.
+ *
+ * @serial true if a data column was read before truncation
+ */
+ private final boolean read;
+
+ /**
+ * This is the size of the data after truncation.
+ *
+ * @serial the size actually transferred
+ */
+ private final int transferSize;
+
+ /**
+ * Create a new instance with the specified values. The descriptive error
+ * message for this exception will be "Data truncation", the SQL state
+ * will be "01004", and the vendor specific error code will be set to 0.
+ *
+ * @param index the index of the parameter or column that was truncated
+ * @param parameter <code>true</code> if a parameter was truncated
+ * @param read <code>true</code> if a data column was truncated
+ * @param dataSize the original size of the data
+ * @param transferSize the size of the data after truncation
+ */
+ public DataTruncation(int index, boolean parameter, boolean read,
+ int dataSize, int transferSize)
+ {
+ super("Data truncation", "01004");
+ this.index = index;
+ this.parameter = parameter;
+ this.read = read;
+ this.dataSize = dataSize;
+ this.transferSize = transferSize;
+ }
+
+ /**
+ * Get the index of the column or parameter that was truncated.
+ *
+ * @return the index of the column or parameter that was truncated
+ */
+ public int getIndex()
+ {
+ return index;
+ }
+
+ /**
+ * Return true if it was a parameter that was truncated.
+ *
+ * @return <code>true</code> if a parameter was truncated
+ */
+ public boolean getParameter()
+ {
+ return parameter;
+ }
+
+ /**
+ * Return true if it was a column that was truncated.
+ *
+ * @return <code>true</code> if a column was truncated
+ */
+ public boolean getRead()
+ {
+ return read;
+ }
+
+ /**
+ * This method returns the original size of the parameter or column that
+ * was truncated.
+ *
+ * @return the original size
+ */
+ public int getDataSize()
+ {
+ return dataSize;
+ }
+
+ /**
+ * This method returns the size of the parameter or column after it was
+ * truncated.
+ *
+ * @return the truncated size
+ */
+ public int getTransferSize()
+ {
+ return transferSize;
+ }
} // class DataTruncation
-
diff --git a/java/sql/SQLException.java b/java/sql/SQLException.java
index fce56650f..64e14503d 100644
--- a/java/sql/SQLException.java
+++ b/java/sql/SQLException.java
@@ -1,5 +1,5 @@
/* SQLException.java -- General SQL exception
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -39,183 +39,139 @@ exception statement from your version. */
package java.sql;
/**
- * This exception is thrown when a database error occurs.
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- */
-public class SQLException extends Exception
-{
-
-/*************************************************************************/
-
-/*
- * Instance Variables
+ * This exception is thrown when a database error occurs. This exception
+ * keeps track of additional information:<br><ul>
+ * <li>The error message string (part of all Throwables)</li>
+ * <li>An "SQLstate" string, following either the XOPEN SQLstate or the SQL 99
+ * conventions.</li>
+ * <li>A vendor-specific integer error code.</li>
+ * <li>A chain to the next exception.</li>
+ * <ul>
+ *
+ * @author Aaron M. Renn (arenn@urbanophile.com)
+ * @status updated to 1.4
*/
-
-/**
- * This is the next exception in the chain
- * @serialized
- */
-private SQLException next;
-
-/**
- * This is the state of the SQL statement at the time of the error.
- * @serialized
- */
-private String SQLState;
-
-/**
- * The vendor error code for this error
- * @serialized
- */
-private int vendorCode;
-
-/*************************************************************************/
-
-/**
- * Static Variables
- */
-
-/**
- * This is the serialization UID for this class
- */
-private static final long serialVersionUID = 2135244094396331484L;
-
-/*************************************************************************/
-
-/*
- * Constructors
- */
-
-/**
- * This method initializes a new instance of <code>SQLException</code>
- * that does not have a descriptive messages and SQL state, and which
- * has a vendor error code of 0.
- */
-public
-SQLException()
-{
- this(null, null, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>SQLException</code>
- * with the specified descriptive error message. The SQL state of this
- * instance will be <code>null</code> and the vendor error code will be 0.
- *
- * @param message A string describing the nature of the error.
- */
-public
-SQLException(String message)
-{
- this(message, null, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>SQLException</code>
- * with the specified descriptive error message and SQL state string.
- * The vendor error code of this instance will be 0.
- *
- * @param message A string describing the nature of the error.
- * @param SQLState A string containing the SQL state of the error.
- */
-public
-SQLException(String message, String SQLState)
-{
- this(message, SQLState, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a nwe instance of <code>SQLException</code>
- * with the specified descriptive error message, SQL state string, and
- * vendor code.
- *
- * @param message A string describing the nature of the error.
- * @param SQLState A string containing the SQL state of the error.
- * @param vendorCode The vendor error code associated with this error.
- */
-public
-SQLException(String message, String SQLState, int vendorCode)
-{
- super(message);
-
- this.SQLState = SQLState;
- this.vendorCode = vendorCode;
-}
-
-/*************************************************************************/
-
-/*
- * Instance Methods
- */
-
-/**
- * This method returns the SQLState information associated with this
- * error. The value returned is a <code>String</code> which is formatted
- * using the XOPEN SQL state conventions.
- *
- * @return The SQL state, which may be <code>null</code>.
- */
-public String
-getSQLState()
-{
- return(SQLState);
-}
-
-/*************************************************************************/
-
-/**
- * This method returns the vendor specific error code associated with
- * this error.
- *
- * @return The vendor specific error code associated with this error.
- */
-public int
-getErrorCode()
-{
- return(vendorCode);
-}
-
-/*************************************************************************/
-
-/**
- * This method returns the exception that is chained to this object.
- *
- * @return The exception chained to this object, which may be
- * <code>null</code>.
- */
-public SQLException
-getNextException()
-{
- return(next);
-}
-
-/*************************************************************************/
-
-/**
- * This method adds a new exception to the end of the chain of exceptions
- * that are chained to this object.
- *
- * @param e The exception to add to the end of the chain.
- */
-public void
-setNextException(SQLException e)
+public class SQLException extends Exception
{
- if (e == null)
- return;
-
- SQLException list_entry = this;
- while (list_entry.getNextException() != null)
- list_entry = list_entry.getNextException();
-
- list_entry.next = e;
-}
-
+ /**
+ * Compatible with JDK 1.1+.
+ */
+ private static final long serialVersionUID = 2135244094396331484L;
+
+ /**
+ * This is the next exception in the chain.
+ *
+ * @serial the next exception in the chain
+ */
+ // Package visible for use by SQLWarning.
+ SQLException next;
+
+ /**
+ * This is the state of the SQL statement at the time of the error.
+ *
+ * @serial the SQLstate
+ */
+ private final String SQLState;
+
+ /**
+ * The vendor error code for this error.
+ *
+ * @serial the vendor code
+ */
+ private final int vendorCode;
+
+ /**
+ * Create a new instance that does not have a descriptive messages or SQL
+ * state, and which has a vendor error code of 0.
+ */
+ public SQLException()
+ {
+ this(null, null, 0);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message. The
+ * SQL state of this instance will be <code>null</code> and the vendor
+ * error code will be 0.
+ *
+ * @param message a string describing the nature of the error
+ */
+ public SQLException(String message)
+ {
+ this(message, null, 0);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message
+ * and SQL state string. The vendor error code of this instance will be 0.
+ *
+ * @param message a string describing the nature of the error
+ * @param SQLState a string containing the SQL state of the error
+ */
+ public SQLException(String message, String SQLState)
+ {
+ this(message, SQLState, 0);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message,
+ * SQL state string, and vendor code.
+ *
+ * @param message a string describing the nature of the error
+ * @param SQLState a string containing the SQL state of the error
+ * @param vendorCode the vendor error code associated with this error
+ */
+ public SQLException(String message, String SQLState, int vendorCode)
+ {
+ super(message);
+ this.SQLState = SQLState;
+ this.vendorCode = vendorCode;
+ }
+
+ /**
+ * Get the SQLState information associated with this error. This
+ * implementation formats the value using the XOPEN SQL state conventions.
+ *
+ * @return The SQL state, which may be <code>null</code>
+ */
+ public String getSQLState()
+ {
+ return SQLState;
+ }
+
+ /**
+ * Get the vendor specific error code associated with this error.
+ *
+ * @return the vendor specific error code associated with this error
+ */
+ public int getErrorCode()
+ {
+ return vendorCode;
+ }
+
+ /**
+ * Get any exception that is chained to this object.
+ *
+ * @return the exception chained to this object, or null
+ */
+ public SQLException getNextException()
+ {
+ return next;
+ }
+
+ /**
+ * Add a new exception to the end of the chain of exceptions that are
+ * chained to this object.
+ *
+ * @param e the exception to add to the end of the chain
+ */
+ public void setNextException(SQLException e)
+ {
+ if (e == null)
+ return;
+ SQLException entry = this;
+ while (entry.next != null)
+ entry = entry.next;
+ entry.next = e;
+ }
} // class SQLException
-
diff --git a/java/sql/SQLWarning.java b/java/sql/SQLWarning.java
index 1a74ae028..e2456d5b9 100644
--- a/java/sql/SQLWarning.java
+++ b/java/sql/SQLWarning.java
@@ -1,5 +1,5 @@
-/* SQLWarning.java -- Database access warnings.
- Copyright (C) 1999, 2000 Free Software Foundation, Inc.
+/* SQLWarning.java -- database access warnings
+ Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -39,120 +39,94 @@ exception statement from your version. */
package java.sql;
/**
- * This exception is thrown when a database warning occurs.
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- */
-public class SQLWarning extends SQLException
-{
-
-/*************************************************************************/
-
-/**
- * Static Variables
- */
-
-/**
- * This is the serialization UID for this class
- */
-private static final long serialVersionUID = 3917336774604784856L;
-
-/*************************************************************************/
-
-/*
- * Constructors
+ * This exception is thrown when a database warning occurs. Warnings are
+ * silently chained to the object which caused them.
+ *
+ * <p>Warnings may be retrieved from <code>Connection</code>,
+ * <code>Statement</code>, and <code>ResultSet</code> objects. Trying to
+ * retrieve a warning one of these after it has been closed will cause an
+ * exception to be thrown. Note that closing a statement also closes a result
+ * set that it might have produced.
+ *
+ * @author Aaron M. Renn (arenn@urbanophile.com)
+ * @see Connection#getWarnings()
+ * @see Statement#getWarnings()
+ * @see ResultSet#getWarnings()
*/
-
-/**
- * This method initializes a new instance of <code>SQLWarning</code>
- * that does not have a descriptive messages and SQL state, and which
- * has a vendor error code of 0.
- */
-public
-SQLWarning()
-{
- this(null, null, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>SQLWarning</code>
- * with the specified descriptive error message. The SQL state of this
- * instance will be <code>null</code> and the vendor error code will be 0.
- *
- * @param message A string describing the nature of the error.
- */
-public
-SQLWarning(String message)
-{
- this(message, null, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a new instance of <code>SQLWarning</code>
- * with the specified descriptive error message and SQL state string.
- * The vendor error code of this instance will be 0.
- *
- * @param message A string describing the nature of the error.
- * @param SQLState A string containing the SQL state of the error.
- */
-public
-SQLWarning(String message, String SQLState)
-{
- this(message, SQLState, 0);
-}
-
-/*************************************************************************/
-
-/**
- * This method initializes a nwe instance of <code>SQLWarning</code>
- * with the specified descriptive error message, SQL state string, and
- * vendor code.
- *
- * @param message A string describing the nature of the error.
- * @param SQLState A string containing the SQL state of the error.
- * @param vendorCode The vendor error code associated with this error.
- */
-public
-SQLWarning(String message, String SQLState, int vendorCode)
-{
- super(message, SQLState, vendorCode);
-}
-
-/*************************************************************************/
-
-/*
- * Instance Methods
- */
-
-/**
- * This method returns the exception that is chained to this object.
- *
- * @return The exception chained to this object, which may be
- * <code>null</code>.
- */
-public SQLWarning
-getNextWarning()
-{
- return((SQLWarning)super.getNextException());
-}
-
-/*************************************************************************/
-
-/**
- * This method adds a new exception to the end of the chain of exceptions
- * that are chained to this object.
- *
- * @param e The exception to add to the end of the chain.
- */
-public void
-setNextWarning(SQLWarning e)
+public class SQLWarning extends SQLException
{
- super.setNextException(e);
-}
-
+ /**
+ * Compatible with JDK 1.1+.
+ */
+ private static final long serialVersionUID = 3917336774604784856L;
+
+ /**
+ * Create a new instance that does not have a descriptive messages or SQL
+ * state, and which has a vendor error code of 0.
+ */
+ public SQLWarning()
+ {
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message.
+ * The SQL state of this instance will be <code>null</code> and the vendor
+ * error code will be 0.
+ *
+ * @param message a string describing the nature of the error
+ */
+ public SQLWarning(String message)
+ {
+ super(message);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message
+ * and SQL state string. The vendor error code of this instance will be 0.
+ *
+ * @param message a string describing the nature of the error
+ * @param SQLState a string containing the SQL state of the error
+ */
+ public SQLWarning(String message, String SQLState)
+ {
+ super(message, SQLState);
+ }
+
+ /**
+ * Create a new instance with the specified descriptive error message,
+ * SQL state string, and vendor code.
+ *
+ * @param message a string describing the nature of the error
+ * @param SQLState a string containing the SQL state of the error
+ * @param vendorCode the vendor error code associated with this error
+ */
+ public SQLWarning(String message, String SQLState, int vendorCode)
+ {
+ super(message, SQLState, vendorCode);
+ }
+
+ /**
+ * Get the warning that is chained to this object.
+ *
+ * @return the exception chained to this object, or null
+ * @throws Error if the next element is not an SQLWarning
+ */
+ public SQLWarning getNextWarning()
+ {
+ if (next == null)
+ return null;
+ if (! (next instanceof SQLWarning))
+ throw new Error("SQLWarning chain holds value that is not a SQLWarning");
+ return (SQLWarning) next;
+ }
+
+ /**
+ * Set the new end of the warning chain.
+ *
+ * @param e the exception to add to the end of the chain
+ */
+ public void setNextWarning(SQLWarning e)
+ {
+ setNextException(e);
+ }
} // class SQLWarning
-