1<?php 2/* 3 * $Id: Module.php 7490 2010-03-29 19:53:27Z jwage $ 4 * 5 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 6 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 7 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 8 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 9 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 10 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 11 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 12 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 13 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 14 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 15 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 16 * 17 * This software consists of voluntary contributions made by many individuals 18 * and is licensed under the LGPL. For more information, see 19 * <http://www.doctrine-project.org>. 20 */ 21 22/** 23 * Doctrine_Connection_Module 24 * 25 * @package Doctrine 26 * @subpackage Connection 27 * @license http://www.opensource.org/licenses/lgpl-license.php LGPL 28 * @link www.doctrine-project.org 29 * @since 1.0 30 * @version $Revision: 7490 $ 31 * @author Konsta Vesterinen <kvesteri@cc.hut.fi> 32 */ 33class Doctrine_Connection_Module 34{ 35 /** 36 * @var Doctrine_Connection $conn Doctrine_Connection object, every connection 37 * module holds an instance of Doctrine_Connection 38 */ 39 protected $conn; 40 41 /** 42 * @var string $moduleName the name of this module 43 */ 44 protected $moduleName; 45 46 /** 47 * @param Doctrine_Connection $conn Doctrine_Connection object, every connection 48 * module holds an instance of Doctrine_Connection 49 */ 50 public function __construct($conn = null) 51 { 52 if ( ! ($conn instanceof Doctrine_Connection)) { 53 $conn = Doctrine_Manager::getInstance()->getCurrentConnection(); 54 } 55 $this->conn = $conn; 56 57 $e = explode('_', get_class($this)); 58 59 $this->moduleName = $e[1]; 60 } 61 62 /** 63 * getConnection 64 * returns the connection object this module uses 65 * 66 * @return Doctrine_Connection 67 */ 68 public function getConnection() 69 { 70 return $this->conn; 71 } 72 73 /** 74 * getModuleName 75 * returns the name of this module 76 * 77 * @return string the name of this module 78 */ 79 public function getModuleName() 80 { 81 return $this->moduleName; 82 } 83}