00001 <?php 00002 /* 00003 * $Id: IndexInfo.php,v 1.7 2005/02/25 15:47:02 pachanga Exp $ 00004 * 00005 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00006 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00007 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 00008 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 00009 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00010 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00011 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 00012 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 00013 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00014 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00015 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00016 * 00017 * This software consists of voluntary contributions made by many individuals 00018 * and is licensed under the LGPL. For more information please see 00019 * <http://creole.phpdb.org>. 00020 */ 00021 00029 class IndexInfo { 00030 00032 private $name; 00033 00035 private $columns = array(); 00036 00038 private $isUnique = false; 00039 00041 private $vendorSpecificInfo = array(); 00042 00043 function __construct($name, $isUnique = false, $vendorInfo = array()) 00044 { 00045 $this->name = $name; 00046 $this->isUnique = $isUnique; 00047 $this->vendorSpecificInfo = $vendorInfo; 00048 } 00049 00050 public function isUnique() 00051 { 00052 return $this->isUnique; 00053 } 00054 00055 public function getName() 00056 { 00057 return $this->name; 00058 } 00059 00064 public function getVendorSpecificInfo() 00065 { 00066 return $this->vendorSpecificInfo; 00067 } 00068 00069 public function addColumn($column) 00070 { 00071 $this->columns[] = $column; 00072 } 00073 00074 public function getColumns() 00075 { 00076 return $this->columns; 00077 } 00078 00079 public function toString() 00080 { 00081 return $this->name; 00082 } 00083 00084 }