KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > mchange > v2 > c3p0 > ConnectionTester


1 /*
2  * Distributed as part of c3p0 v.0.9.1
3  *
4  * Copyright (C) 2005 Machinery For Change, Inc.
5  *
6  * Author: Steve Waldman <swaldman@mchange.com>
7  *
8  * This library is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU Lesser General Public License version 2.1, as
10  * published by the Free Software Foundation.
11  *
12  * This software is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public License
18  * along with this software; see the file LICENSE. If not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */

22
23
24 package com.mchange.v2.c3p0;
25
26 import java.io.Serializable JavaDoc;
27 import java.sql.Connection JavaDoc;
28
29 /**
30  * <p>Define your own Connection tester if you want to
31  * override c3p0's default behavior for testing the validity
32  * of Connections and responding to Connection errors encountered.</p>
33  *
34  * <p><b>Recommended:</b> If you'd like your ConnectionTester
35  * to support the user-configured <tt>preferredTestQuery</tt>
36  * parameter, please implement {@link com.mchange.v2.c3p0.UnifiedConnectionTester}.
37  *
38  * <p>ConnectionTesters should be Serializable, immutable,
39  * and must have public, no-arg constructors.</p>
40  *
41  * @see com.mchange.v2.c3p0.UnifiedConnectionTester
42  * @see com.mchange.v2.c3p0.AbstractConnectionTester
43  */

44 public interface ConnectionTester extends Serializable JavaDoc
45 {
46     public final static int CONNECTION_IS_OKAY = 0;
47     public final static int CONNECTION_IS_INVALID = -1;
48     public final static int DATABASE_IS_INVALID = -8;
49
50     public int activeCheckConnection(Connection JavaDoc c);
51
52     public int statusOnException(Connection JavaDoc c, Throwable JavaDoc t);
53
54     /**
55      * Multiple testers that are of the same
56      * class and use the same criteria for determining fatality
57      * should test as equals().
58      */

59     public boolean equals( Object JavaDoc o );
60
61     /**
62      * keep consistent with equals()
63      */

64     public int hashCode();
65 }
66
Popular Tags