001    /*
002    @license.text@
003     */
004    package biz.hammurapi.sql.hsqldb;
005    
006    import java.io.IOException;
007    import java.sql.SQLException;
008    
009    import biz.hammurapi.sql.Transaction;
010    
011    /**
012     * HSQLDB class loader resource data source.
013     * @author Pavel Vlasov 
014     */
015    public class HsqldbResourceDataSource extends HsqldbDataSource {
016    
017            /**
018             * Constructor. Uses "sa" as user name and blank password. Creates a database if one doesn't exist.
019             * @param dbName - Database name. E.g. /com/mycompany/myproject/myDB.
020             * @param user Database user
021             * @param password Database password
022             * @param connectionInitTransaction Connection initialization transaction
023             * @throws ClassNotFoundException
024             * @throws IOException
025             * @throws SQLException
026             */
027            public HsqldbResourceDataSource(String dbName, Transaction connectionInitTransaction) throws ClassNotFoundException, SQLException {
028                    this(dbName, "sa", "", connectionInitTransaction);
029            }
030            
031            /**
032             * Constructor. Creates a database if one doesn't exist.
033             * @param dbName - Database name. E.g. /com/mycompany/myproject/myDB.
034             * @param user Database user
035             * @param password Database password
036             * @param connectionInitTransaction Connection initialization transaction
037             * @throws ClassNotFoundException
038             * @throws IOException
039             * @throws SQLException
040             */
041            public HsqldbResourceDataSource(String dbName, String user, String password, Transaction connectionInitTransaction) throws ClassNotFoundException, SQLException {
042                    super("jdbc:hsqldb:res:"+dbName, user, password, connectionInitTransaction);
043            }                       
044    }