class_StorableFactory.inc.php 1.62 KB
<?php
/**
 * @file	StorableFactory.inc.php
 * @category freeSN
 * @mailto	code [at] netz.coop
 * @version 0.4.200901
 * @link http://netz.coop
 * 
 *  @copyright Copyright by netz.coop e.G. 2015
 *  
 *
 *   This program is free software: you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *   This program is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 * 
 */
/**
 * class StorableFactory
 */
class StorableFactory  {

	/**
	 *	Funktion erstellt ein neues Datenbank Object und gibt es zurück
	 *
	 *	@param	String	$param_Type
	 *	@return	iBasicSql Object
	 */
	public static function create($param_Type, array $param_DataBaseData)	{
		switch ($param_Type) {
			case 'MySql': {
				$var_PDOObject = new PDO(	"mysql:host=".$param_DataBaseData['config_dbserver'].";dbname=".$param_DataBaseData['config_db']."",
				$param_DataBaseData['config_user'],
				$param_DataBaseData['config_passwd']
				//					,						array(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true)
				);
				return new MySql($param_DataBaseData, $var_PDOObject);
			}
			break;

			case 'LospService': {
				return new LospService($param_DataBaseData);
			}
			break;
		}
	}

}
?>