/*
 * blancoDb Enterprise Edition
 * Copyright (C) 2004-2005 Tosiki Iga
 * 
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 */
package blanco.db.exception;

import java.sql.SQLException;

/**
 * データベース制約違反に関する例外クラス <br>
 * このクラスはblancoDbが生成したソースコードで利用されます <br>
 * ※このクラスは、ソースコード自動生成後のファイルとして利用されます。
 * 
 * @since 2005.05.12
 * @author Tosiki Iga
 */
public class IntegrityConstraintException extends SQLException {
    private static final String SQLSTATE_INTEGRITYCONSTRAINT = "23000";

    /**
     * 制約違反が発生したことを示す例外オブジェクト のインスタンスを作成します。
     * 
     * @deprecated このコンストラクタはなるべく利用せずに、もとの例外のSQLStateやvenderCodeを利用可能な別のコンストラクタを利用してください。
     */
    public IntegrityConstraintException() {
        super("Integrity consrtraint exception has occured.",
                SQLSTATE_INTEGRITYCONSTRAINT);
    }

    /**
     * 制約違反が発生したことを示す例外オブジェクト のインスタンスを作成します。
     * 
     * @deprecated このコンストラクタはなるべく利用せずに、もとの例外のSQLStateやvenderCodeを利用可能な別のコンストラクタを利用してください。
     * @param reason
     */
    public IntegrityConstraintException(String reason) {
        super(reason, SQLSTATE_INTEGRITYCONSTRAINT);
    }

    /**
     * 制約違反が発生したことを示す例外オブジェクト のインスタンスを作成します。
     * 
     * @deprecated このコンストラクタはなるべく利用せずに、もとの例外のSQLStateやvenderCodeを利用可能な別のコンストラクタを利用してください。
     * @param reason
     * @param SQLState
     */
    public IntegrityConstraintException(String reason, String SQLState) {
        super(reason, SQLState);
    }

    /**
     * 制約違反が発生したことを示す例外オブジェクト のインスタンスを作成します。
     * 
     * @param reason
     * @param SQLState
     * @param vendorCode
     */
    public IntegrityConstraintException(String reason, String SQLState,
            int vendorCode) {
        super(reason, SQLState, vendorCode);
    }
}