Package org.jboss.resource.adapter.jdbc

Source Code of org.jboss.resource.adapter.jdbc.WrapperDataSource

/*
* JBoss, the OpenSource J2EE webOS
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*
*/

package org.jboss.resource.adapter.jdbc;


import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.NamingException;
import javax.naming.Reference;
import javax.resource.Referenceable;
import javax.resource.ResourceException;
import javax.resource.spi.ConnectionManager;
import javax.resource.spi.ConnectionRequestInfo;
import javax.sql.DataSource;
import org.jboss.util.NestedSQLException;
import java.io.Serializable;

/**
* WrapperDataSource.java
*
*
* Created: Fri Apr 19 13:34:35 2002
*
* @author <a href="mailto:d_jencks@users.sourceforge.net">David Jencks</a>
* @version
*/

public class WrapperDataSource
   implements Referenceable, DataSource, Serializable 
{

   private final BaseWrapperManagedConnectionFactory mcf;
   private final ConnectionManager cm;

   private Reference reference;

   public WrapperDataSource (final BaseWrapperManagedConnectionFactory mcf, final ConnectionManager cm)
   {
      this.mcf = mcf;
      this.cm = cm;  
   }
   // implementation of javax.sql.DataSource interface

   /**
    *
    * @return <description>
    * @exception java.sql.SQLException <description>
    */
   public PrintWriter getLogWriter() throws SQLException
   {
      // TODO: implement this javax.sql.DataSource method
      return null;
   }

   /**
    *
    * @param param1 <description>
    * @exception java.sql.SQLException <description>
    */
   public void setLogWriter(PrintWriter param1) throws SQLException
   {
      // TODO: implement this javax.sql.DataSource method
   }

   /**
    *
    * @return <description>
    * @exception java.sql.SQLException <description>
    */
   public int getLoginTimeout() throws SQLException
   {
      // TODO: implement this javax.sql.DataSource method
      return 0;
   }

   /**
    *
    * @param param1 <description>
    * @exception java.sql.SQLException <description>
    */
   public void setLoginTimeout(int param1) throws SQLException
   {
      // TODO: implement this javax.sql.DataSource method
   }

   /**
    *
    * @return <description>
    * @exception java.sql.SQLException <description>
    */
   public Connection getConnection() throws SQLException
   {
      try
      {
         return (Connection)cm.allocateConnection(mcf, null);
      }
      catch (ResourceException re)
      {
         throw new NestedSQLException(re);
      } // end of try-catch
   }

   /**
    *
    * @param param1 <description>
    * @param param2 <description>
    * @return <description>
    * @exception java.sql.SQLException <description>
    */
   public Connection getConnection(String user, String password) throws SQLException
   {
      ConnectionRequestInfo cri = new WrappedConnectionRequestInfo(user, password);
      try
      {
         return (Connection)cm.allocateConnection(mcf, cri);
      }
      catch (ResourceException re)
      {
         throw new NestedSQLException(re);
      } // end of try-catch
   }

   // implementation of javax.resource.Referenceable interface

   /**
    *
    * @param param1 <description>
    */
   public void setReference(final Reference reference)
   {
      this.reference = reference;
   }
   // implementation of javax.naming.Referenceable interface

   /**
    *
    * @return <description>
    * @exception javax.naming.NamingException <description>
    */
   public Reference getReference()
   {
      return reference;
   }


}// WrapperDataSource
TOP

Related Classes of org.jboss.resource.adapter.jdbc.WrapperDataSource

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.