Add Horde_Db_Adapter_Abstract_Table::getColumn() to return a single column definition.
authorJan Schneider <jan@horde.org>
Tue, 12 May 2009 21:58:07 +0000 (23:58 +0200)
committerJan Schneider <jan@horde.org>
Tue, 12 May 2009 21:58:07 +0000 (23:58 +0200)
framework/Db/lib/Horde/Db/Adapter/Abstract/Table.php
framework/Db/lib/Horde/Db/Adapter/Mysql/Schema.php
framework/Db/lib/Horde/Db/Adapter/Postgresql/Schema.php
framework/Db/lib/Horde/Db/Adapter/Sqlite/Schema.php

index 79ae49a..177c358 100644 (file)
@@ -76,6 +76,14 @@ class Horde_Db_Adapter_Abstract_Table
     }
 
     /**
+     * @return  Horde_Db_Adapter_Abstract_Column
+     */
+    public function getColumn($column)
+    {
+        return isset($this->_columns[$column]) ? $this->_columns[$column] : null;
+    }
+
+    /**
      * @return  array
      */
     public function getColumnNames()
index 03178dd..3580684 100644 (file)
@@ -266,7 +266,7 @@ class Horde_Db_Adapter_Mysql_Schema extends Horde_Db_Adapter_Abstract_Schema
         // create columns from rows
         $columns = array();
         foreach ($rows as $row) {
-            $columns[] = $this->componentFactory('Column', array(
+            $columns[$row['Field']] = $this->componentFactory('Column', array(
                 $row['Field'], $row['Default'], $row['Type'], $row['Null'] == 'YES'));
         }
 
index 4d8d3da..063d6ce 100644 (file)
@@ -273,7 +273,7 @@ class Horde_Db_Adapter_Postgresql_Schema extends Horde_Db_Adapter_Abstract_Schem
         // create columns from rows
         $columns = array();
         foreach ($rows as $row) {
-            $columns[] = $this->componentFactory('Column', array(
+            $columns[$row[0]] = $this->componentFactory('Column', array(
                 $row[0], $row[2], $row[1], !(boolean)$row[3]));
         }
         return $columns;
index a092017..5442efe 100644 (file)
@@ -198,7 +198,7 @@ class Horde_Db_Adapter_Sqlite_Schema extends Horde_Db_Adapter_Abstract_Schema
         // create columns from rows
         $columns = array();
         foreach ($rows as $row) {
-            $columns[] = $this->componentFactory('Column', array(
+            $columns[$row[1]] = $this->componentFactory('Column', array(
                 $row[1], $row[4], $row[2], !(bool)$row[3]));
         }