/*
* Created on Mar 20, 2003
*/
package net.sf.jportlet.service.jdbc;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import net.sf.jportlet.service.PortletServiceAdapter;
import net.sf.jportlet.service.PortletServiceConfig;
import net.sf.jportlet.service.PortletServiceException;
/**
* Implementation of {@link net.sf.jportlet.service.jdbc.JDBCService}.
*
* @author <a href="mailto:tchbansi@sourceforge.net">Herve Tchepannou</a>
*/
public class JDBCServiceImpl
extends PortletServiceAdapter
implements JDBCService
{
//~ Instance fields --------------------------------------------------------
private String _datasource;
//~ Methods ----------------------------------------------------------------
/**
* @see net.sf.jportlet.service.jdbc.JDBCService#getConnection()
*/
public Connection getConnection( )
throws NamingException,
SQLException
{
DataSource ds = ( DataSource ) new InitialContext( ).lookup( _datasource );
return ds.getConnection( );
}
/**
* @see net.sf.jportlet.service.PortletService#init(net.sf.jportlet.service.PortletServiceConfig)
*/
public void init( PortletServiceConfig serviceConfig )
throws PortletServiceException
{
super.init( serviceConfig );
_datasource = getInitParameter( "datasource" );
if ( _datasource == null )
{
throw new PortletServiceException( "datasource is required" );
}
}
/**
* @see net.sf.jportlet.service.PortletService#getServiceName()
*/
public String getServiceName( )
{
return JDBCService.NAME;
}
}