Version 1
[yaffs-website] / vendor / gabordemooij / redbean / RedBeanPHP / Driver.php
diff --git a/vendor/gabordemooij/redbean/RedBeanPHP/Driver.php b/vendor/gabordemooij/redbean/RedBeanPHP/Driver.php
new file mode 100755 (executable)
index 0000000..befd7b1
--- /dev/null
@@ -0,0 +1,164 @@
+<?php
+
+namespace RedBeanPHP;
+
+/**
+ * Interface for database drivers.
+ * The Driver API conforms to the ADODB pseudo standard
+ * for database drivers.
+ *
+ * @file       RedBeanPHP/Driver.php
+ * @author     Gabor de Mooij and the RedBeanPHP Community
+ * @license    BSD/GPLv2
+ *
+ * @copyright
+ * copyright (c) G.J.G.T. (Gabor) de Mooij and the RedBeanPHP Community
+ * This source file is subject to the BSD/GPLv2 License that is bundled
+ * with this source code in the file license.txt.
+ */
+interface Driver
+{
+       /**
+        * Runs a query and fetches results as a multi dimensional array.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return array
+        */
+       public function GetAll( $sql, $bindings = array() );
+
+       /**
+        * Runs a query and fetches results as a column.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return array
+        */
+       public function GetCol( $sql, $bindings = array() );
+
+       /**
+        * Runs a query and returns results as a single cell.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return mixed
+        */
+       public function GetOne( $sql, $bindings = array() );
+
+       /**
+        * Runs a query and returns results as an associative array
+        * indexed by the first column.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return mixed
+        */
+       public function GetAssocRow( $sql, $bindings = array() );
+
+       /**
+        * Runs a query and returns a flat array containing the values of
+        * one row.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return array
+        */
+       public function GetRow( $sql, $bindings = array() );
+
+       /**
+        * Executes SQL code and allows key-value binding.
+        * This function allows you to provide an array with values to bind
+        * to query parameters. For instance you can bind values to question
+        * marks in the query. Each value in the array corresponds to the
+        * question mark in the query that matches the position of the value in the
+        * array. You can also bind values using explicit keys, for instance
+        * array(":key"=>123) will bind the integer 123 to the key :key in the
+        * SQL. This method has no return value.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return array Affected Rows
+        */
+       public function Execute( $sql, $bindings = array() );
+
+       /**
+        * Returns the latest insert ID if driver does support this
+        * feature.
+        *
+        * @return integer
+        */
+       public function GetInsertID();
+
+       /**
+        * Returns the number of rows affected by the most recent query
+        * if the currently selected driver driver supports this feature.
+        *
+        * @return integer
+        */
+       public function Affected_Rows();
+
+       /**
+        * Returns a cursor-like object from the database.
+        *
+        * @param string $sql      SQL query to execute
+        * @param array  $bindings list of values to bind to SQL snippet
+        *
+        * @return mixed
+        */
+       public function GetCursor( $sql, $bindings = array() );
+
+       /**
+        * Toggles debug mode. In debug mode the driver will print all
+        * SQL to the screen together with some information about the
+        * results. All SQL code that passes through the driver will be
+        * passes on to the screen for inspection.
+        * This method has no return value.
+        *
+        * @param boolean $tf TRUE = debug mode ON
+        * @param Logger $customLogger
+        *
+        * @return void
+        */
+       public function setDebugMode( $tf, $customLogger );
+
+       /**
+        * Starts a transaction.
+        *
+        * @return void
+        */
+       public function CommitTrans();
+
+       /**
+        * Commits a transaction.
+        *
+        * @return void
+        */
+       public function StartTrans();
+
+       /**
+        * Rolls back a transaction.
+        *
+        * @return void
+        */
+       public function FailTrans();
+
+       /**
+        * Resets the internal Query Counter.
+        *
+        * @return self
+        */
+       public function resetCounter();
+
+       /**
+        * Returns the number of SQL queries processed.
+        *
+        * @return integer
+        */
+       public function getQueryCount();
+}