summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/private/appframework/db/db.php24
-rw-r--r--lib/private/db/adapter.php13
-rw-r--r--lib/private/db/adaptersqlite.php13
-rw-r--r--lib/private/db/connection.php14
-rw-r--r--lib/public/db.php22
-rw-r--r--lib/public/idbconnection.php24
6 files changed, 48 insertions, 62 deletions
diff --git a/lib/private/appframework/db/db.php b/lib/private/appframework/db/db.php
index 18c32c948c5..0824e108f49 100644
--- a/lib/private/appframework/db/db.php
+++ b/lib/private/appframework/db/db.php
@@ -121,24 +121,16 @@ class Db implements IDb {
}
/**
- * Insert a row if a matching row doesn't exists.
- * @param string $table The table name (will replace *PREFIX*) to perform the replace on.
- * @param array $input
- * @throws \OC\HintException
- *
- * The input array if in the form:
- *
- * array ( 'id' => array ( 'value' => 6,
- * 'key' => true
- * ),
- * 'name' => array ('value' => 'Stoyan'),
- * 'family' => array ('value' => 'Stefanov'),
- * 'birth_date' => array ('value' => '1975-06-20')
- * );
- * @return bool
+ * Insert a row if the matching row does not exists.
*
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
+ * @throws \Doctrine\DBAL\DBALException
*/
- public function insertIfNotExist($table, $input, $compare = null) {
+ public function insertIfNotExist($table, $input, array $compare = null) {
return $this->connection->insertIfNotExist($table, $input, $compare);
}
diff --git a/lib/private/db/adapter.php b/lib/private/db/adapter.php
index bd1604caf20..d0641f113f3 100644
--- a/lib/private/db/adapter.php
+++ b/lib/private/db/adapter.php
@@ -40,13 +40,16 @@ class Adapter {
}
/**
- * insert the @input values when they do not exist yet
- * @param string $table name
- * @param array $input key->value pair, key has to be sanitized properly
+ * Insert a row if the matching row does not exists.
+ *
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
* @throws \Doctrine\DBAL\DBALException
- * @return int count of inserted rows
*/
- public function insertIfNotExist($table, $input, $compare = null) {
+ public function insertIfNotExist($table, $input, array $compare = null) {
if ($compare === null) {
$compare = array_keys($input);
}
diff --git a/lib/private/db/adaptersqlite.php b/lib/private/db/adaptersqlite.php
index f93183bee90..1528285e11a 100644
--- a/lib/private/db/adaptersqlite.php
+++ b/lib/private/db/adaptersqlite.php
@@ -19,13 +19,16 @@ class AdapterSqlite extends Adapter {
}
/**
- * @param string $table
- * @param array $input
- * @param null $compare
- * @return int
+ * Insert a row if the matching row does not exists.
+ *
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
* @throws \Doctrine\DBAL\DBALException
*/
- public function insertIfNotExist($table, $input, $compare = null) {
+ public function insertIfNotExist($table, $input, array $compare = null) {
if ($compare === null) {
$compare = array_keys($input);
}
diff --git a/lib/private/db/connection.php b/lib/private/db/connection.php
index cdbfc94a039..023e265f242 100644
--- a/lib/private/db/connection.php
+++ b/lib/private/db/connection.php
@@ -157,14 +157,16 @@ class Connection extends \Doctrine\DBAL\Connection implements IDBConnection {
}
/**
- * Insert a row if a matching row does not exists.
- * @param string $table. The table to insert into in the form '*PREFIX*tableName'
- * @param array $input. An array of field name/value pairs
- * @param array $compare
+ * Insert a row if the matching row does not exists.
+ *
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
* @throws \Doctrine\DBAL\DBALException
- * @return bool The return value from execute()
*/
- public function insertIfNotExist($table, $input, $compare = null) {
+ public function insertIfNotExist($table, $input, array $compare = null) {
return $this->adapter->insertIfNotExist($table, $input, $compare);
}
diff --git a/lib/public/db.php b/lib/public/db.php
index d8d81f239b2..595ecd66bdc 100644
--- a/lib/public/db.php
+++ b/lib/public/db.php
@@ -48,23 +48,17 @@ class DB {
}
/**
- * Insert a row if a matching row doesn't exists.
- * @param string $table The optional table name (will replace *PREFIX*) and add sequence suffix
- * @param array $input
- *
- * The input array if in the form:
+ * Insert a row if the matching row does not exists.
*
- * array ( 'id' => array ( 'value' => 6,
- * 'key' => true
- * ),
- * 'name' => array ('value' => 'Stoyan'),
- * 'family' => array ('value' => 'Stefanov'),
- * 'birth_date' => array ('value' => '1975-06-20')
- * );
- * @return bool
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
+ * @throws \Doctrine\DBAL\DBALException
*
*/
- public static function insertIfNotExist($table, $input, $compare = null) {
+ public static function insertIfNotExist($table, $input, array $compare = null) {
return \OC::$server->getDatabaseConnection()->insertIfNotExist($table, $input, $compare);
}
diff --git a/lib/public/idbconnection.php b/lib/public/idbconnection.php
index c8a2c5796b5..1117c2da9b2 100644
--- a/lib/public/idbconnection.php
+++ b/lib/public/idbconnection.php
@@ -77,24 +77,16 @@ interface IDBConnection {
public function lastInsertId($table = null);
/**
- * Insert a row if a matching row doesn't exists.
- * @param string $table The table name (will replace *PREFIX*) to perform the replace on.
- * @param array $input
- * @throws \Doctrine\DBAL\DBALException
- *
- * The input array if in the form:
- *
- * array ( 'id' => array ( 'value' => 6,
- * 'key' => true
- * ),
- * 'name' => array ('value' => 'Stoyan'),
- * 'family' => array ('value' => 'Stefanov'),
- * 'birth_date' => array ('value' => '1975-06-20')
- * );
- * @return bool
+ * Insert a row if the matching row does not exists.
*
+ * @param string $table The table name (will replace *PREFIX* with the actual prefix)
+ * @param array $input data that should be inserted into the table (column name => value)
+ * @param array|null $compare List of values that should be checked for "if not exists"
+ * If this is null or an empty array, all keys of $input will be compared
+ * @return int number of inserted rows
+ * @throws \Doctrine\DBAL\DBALException
*/
- public function insertIfNotExist($table, $input, $compare = null);
+ public function insertIfNotExist($table, $input, array $compare = null);
/**
* Start a transaction