001 /* 002 * Copyright 2001,2004 The Apache Software Foundation. 003 * 004 * Licensed under the Apache License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.apache.org/licenses/LICENSE-2.0 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 017 package org.apache.commons.scaffold.sql; 018 019 020 /** 021 * ConnectionAdaptor for Poolman. 022 * <p> 023 * When an application initializes it should create an instance 024 * of this class to use Poolman for SQL connections. 025 * 026 * @author Ted Husted 027 * @version $Revision: 155464 $ $Date: 2005-02-26 13:26:54 +0000 (Sat, 26 Feb 2005) $ 028 */ 029 030 import java.sql.SQLException; 031 032 import javax.sql.DataSource; 033 034 import com.codestudio.sql.PoolMan; 035 036 037 public class PoolmanAdaptor extends ConnectionAdaptor { 038 039 /** 040 * An exception message to throw if poolman returns null. 041 */ 042 private static final String POOLMAN_MESSAGE = "Connection pool " + 043 "not available. Check your poolman.xml config, and be sure " + 044 "you are using a valid dbname parameter (use dbname, not jndiName)"; 045 046 047 // Inherits JavaDoc 048 protected DataSource getDataSource(String key) 049 throws SQLException { 050 051 if (null==key) return null; 052 053 return PoolMan.findDataSource(key); 054 055 } 056 057 058 // Required 059 public PoolmanAdaptor() { 060 061 setMessage(POOLMAN_MESSAGE); 062 if (null==pool) pool = this; 063 064 } 065 066 067 } // end PoolmanAdaptor 068