summaryrefslogtreecommitdiffstats
path: root/src/datasets
diff options
context:
space:
mode:
authorKore Nordmann <github@kore-nordmann.de>2007-05-03 07:38:25 +0000
committerKore Nordmann <github@kore-nordmann.de>2007-05-03 07:38:25 +0000
commit060e4cc112feeedeaf76f1c71fe221a45e8c3246 (patch)
tree051a06faf0b019666e3c5210f63ff5af407d49cc /src/datasets
parent45dc0d77c5585a51bb04ef21bdc83792ef0d622a (diff)
downloadzetacomponents-graph-060e4cc112feeedeaf76f1c71fe221a45e8c3246.zip
zetacomponents-graph-060e4cc112feeedeaf76f1c71fe221a45e8c3246.tar.gz
- Removed PdoDataset from Graph components
# Preparation for issue #10697: Move ezcGraphPdoDataSet to a # ezcGraphDatabaseTieIn
Diffstat (limited to 'src/datasets')
-rw-r--r--src/datasets/pdo.php138
1 files changed, 0 insertions, 138 deletions
diff --git a/src/datasets/pdo.php b/src/datasets/pdo.php
deleted file mode 100644
index 0da65bd..0000000
--- a/src/datasets/pdo.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-/**
- * File containing the ezcGraphPdoDataSet class
- *
- * @package Graph
- * @version //autogentag//
- * @copyright Copyright (C) 2005-2007 eZ systems as. All rights reserved.
- * @license http://ez.no/licenses/new_bsd New BSD License
- */
-/**
- * Class to transform PDO results into ezcGraphDataSets
- *
- * @package Graph
- * @mainclass
- */
-class ezcGraphPdoDataSet extends ezcGraphDataSet
-{
- /**
- * Constructor
- *
- * Creates a ezcGraphPdoDataSet from a PDOStatement and uses the columns
- * defined in the definition array as keys and values for the data set.
- *
- * If the definition array is empty a single column will be used as values,
- * with two columns the first column will be used for the keys and the
- * second for the data set values.
- *
- * You may define the name of the rows used for keys and values by using
- * an array like:
- * array (
- * ezcGraph::KEY => 'row name',
- * ezcGraph::VALUE => 'row name',
- * );
- *
- * @param PDOStatement $statement
- * @param array $definition
- * @return ezcGraphPdoDataSet
- */
- public function __construct( PDOStatement $statement, array $definition = null )
- {
- parent::__construct();
-
- $this->data = array();
- $this->createFromPdo( $statement, $definition );
- }
-
- /**
- * Create dataset from PDO statement
- *
- * This methods uses the values from a PDOStatement to fill up the data
- * sets data.
- *
- * If the definition array is empty a single column will be used as values,
- * with two columns the first column will be used for the keys and the
- * second for the data set values.
- *
- * You may define the name of the rows used for keys and values by using
- * an array like:
- * array (
- * ezcGraph::KEY => 'row name',
- * ezcGraph::VALUE => 'row name',
- * );
- *
- * @param PDOStatement $statement
- * @param array $definition
- * @return void
- */
- protected function createFromPdo( PDOStatement $statement, array $definition = null )
- {
- $count = 0;
-
- if ( $definition === null )
- {
- while ( $row = $statement->fetch( PDO::FETCH_NUM ) )
- {
- ++$count;
-
- switch ( count( $row ) )
- {
- case 1:
- $this->data[] = $row[0];
- break;
- case 2:
- $this->data[$row[0]] = $row[1];
- break;
- default:
- throw new ezcGraphPdoDataSetTooManyColumnsException( $row );
- }
- }
- }
- else
- {
- while ( $row = $statement->fetch( PDO::FETCH_NAMED ) )
- {
- ++$count;
-
- if ( !array_key_exists( $definition[ezcGraph::VALUE], $row ) )
- {
- throw new ezcGraphPdoDataSetMissingColumnException( $definition[ezcGraph::VALUE] );
- }
-
- $value = $row[$definition[ezcGraph::VALUE]];
-
- if ( array_key_exists( ezcGraph::KEY, $definition ) )
- {
- if ( !array_key_exists( $definition[ezcGraph::KEY], $row ) )
- {
- throw new ezcGraphPdoDataSetMissingColumnException( $definition[ezcGraph::KEY] );
- }
-
- $this->data[$row[$definition[ezcGraph::KEY]]] = $value;
- }
- else
- {
- $this->data[] = $value;
- }
- }
- }
-
- // Empty result set
- if ( $count <= 0 )
- {
- throw new ezcGraphPdoDataSetStatementNotExecutedException( $statement );
- }
- }
-
- /**
- * Returns the number of elements in this dataset
- *
- * @return int
- */
- public function count()
- {
- return count( $this->data );
- }
-}
-
-?>
OpenPOWER on IntegriCloud