/************************************************************************* /* BatchUpdateException.java -- Exception for batch oriented SQL errors /* /* Copyright (c) 1999 Free Software Foundation, Inc. /* Written by Aaron M. Renn (arenn@urbanophile.com) /* /* This library is free software; you can redistribute it and/or modify /* it under the terms of the GNU Library General Public License as published /* by the Free Software Foundation, either version 2 of the License, or /* (at your option) any later verion. /* /* This library 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 Library General Public License for more details. /* /* You should have received a copy of the GNU Library General Public License /* along with this library; if not, write to the Free Software Foundation /* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA /*************************************************************************/ package java.sql; /** * This class extends SQLException 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 implements java.io.Serializable { /*************************************************************************/ /* * 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 BatchUpdateException * with no descriptive error message. The SQL state and update count will * be initialized to null and the vendor specific error code will * initialized to 0. */ public BatchUpdateException() { super(); } /*************************************************************************/ /** * This method initializes a new instance of BatchUpdateException * with the specified update count information and no descriptive error * message. This SQL state will be initialized to null 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 BatchUpdateException * with the specified descriptive error message and update count information. * The SQL state will be initialized to null 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 BatchUpdateException * 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 BatchUpdateException * 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 method returns the update count information for this error. If * not null this is an array of int'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 null. */ public int[] getUpdateCounts() { return(updateCounts); } } // class BatchUpdateException