001: /*
002: * Copyright (C) 1999-2004 <A href="http://www-ist.massey.ac.nz/JBDietrich" target="_top">Jens Dietrich</a>
003: *
004: * This library is free software; you can redistribute it and/or
005: * modify it under the terms of the GNU Lesser General Public
006: * License as published by the Free Software Foundation; either
007: * version 2 of the License, or (at your option) any later version.
008: *
009: * This library is distributed in the hope that it will be useful,
010: * but WITHOUT ANY WARRANTY; without even the implied warranty of
011: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
012: * Lesser General Public License for more details.
013: *
014: * You should have received a copy of the GNU Lesser General Public
015: * License along with this library; if not, write to the Free Software
016: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
017: */
018:
019: package test.org.mandarax.ser;
020:
021: import java.io.PrintWriter;
022: import java.io.Serializable;
023: import java.sql.SQLException;
024:
025: import javax.sql.DataSource;
026:
027: /**
028: * Dummy data source to test SQLPredicates, SQLClauseSets and SQLFunctions.
029: * @author <A href="http://www-ist.massey.ac.nz/JBDietrich" target="_top">Jens Dietrich</A>
030: * @version 3.4 <7 March 05>
031: * @since 1.9.1
032: */
033: public class SerializableDataSourceDummy implements DataSource,
034: Serializable {
035: public static final String DUMMY_MESSAGE = "This datasource is only a dummy for serialization tests";
036: private int timeout = 0;
037: private PrintWriter logWriter = null;
038:
039: /**
040: * Constructor.
041: */
042: public SerializableDataSourceDummy() {
043: super ();
044: }
045:
046: /**
047: * Get a database connection.
048: * @return a database connection
049: */
050: public java.sql.Connection getConnection()
051: throws java.sql.SQLException {
052: throw new UnsupportedOperationException(DUMMY_MESSAGE);
053: }
054:
055: /**
056: * Get a database connection.
057: * @return a database connection
058: * @param userName a user name
059: * @param password a password
060: */
061: public java.sql.Connection getConnection(String userName,
062: String password) throws java.sql.SQLException {
063: throw new UnsupportedOperationException(DUMMY_MESSAGE);
064: }
065:
066: /**
067: * Get the login timeout.
068: * @return the login timeout (an integer).
069: */
070: public int getLoginTimeout() throws SQLException {
071: return timeout;
072: }
073:
074: /**
075: * Get a log writer.
076: * @return a log writer.
077: */
078: public PrintWriter getLogWriter() throws SQLException {
079: // throw new UnsupportedOperationException(DUMMY_MESSAGE);
080: return logWriter;
081: }
082:
083: /**
084: * Set the login timeout.
085: * @param millis the time in milli seconds
086: */
087: public void setLoginTimeout(int millis) throws SQLException {
088: // throw new UnsupportedOperationException(DUMMY_MESSAGE);
089: timeout = millis;
090: }
091:
092: /**
093: * Set the log writer.
094: * @param writer a writer
095: */
096: public void setLogWriter(PrintWriter writer) throws SQLException {
097: throw new UnsupportedOperationException(DUMMY_MESSAGE);
098: }
099:
100: /**
101: * Compares objects.
102: * @param obj another object
103: * @return a boolean
104: */
105: public boolean equals(Object obj) {
106: return obj != null
107: && obj instanceof SerializableDataSourceDummy;
108: }
109:
110: /**
111: * Get the hashcode of this object.
112: * @return an integer
113: */
114: public int hashCode() {
115: return getClass().hashCode();
116: }
117: }
|