Unverified Commit 7a943a3b authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3113403 by Beakerboy, daffie: Make Drupal\Core\Database\Query\Condition driver overridable

parent 449b333d
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -942,6 +942,22 @@ public function schema() {
    return $this->schema;
  }

  /**
   * Prepares and returns a CONDITION query object.
   *
   * @param string $conjunction
   *   The operator to use to combine conditions: 'AND' or 'OR'.
   *
   * @return \Drupal\Core\Database\Query\Condition
   *   A new Condition query object.
   *
   * @see \Drupal\Core\Database\Query\Condition
   */
  public function condition($conjunction) {
    $class = $this->getDriverClass('Condition');
    return new $class($conjunction);
  }

  /**
   * Escapes a database name string.
   *
+10 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\Core\Database\Driver\mysql;

use Drupal\Core\Database\Query\Condition as QueryCondition;

/**
 * MySQL implementation of \Drupal\Core\Database\Query\Condition.
 */
class Condition extends QueryCondition {}
+1 −2
Original line number Diff line number Diff line
@@ -2,7 +2,6 @@

namespace Drupal\Core\Database\Driver\mysql;

use Drupal\Core\Database\Query\Condition;
use Drupal\Core\Database\SchemaException;
use Drupal\Core\Database\SchemaObjectExistsException;
use Drupal\Core\Database\SchemaObjectDoesNotExistException;
@@ -75,7 +74,7 @@ protected function getPrefixInfo($table = 'default', $add_prefix = TRUE) {
  protected function buildTableNameCondition($table_name, $operator = '=', $add_prefix = TRUE) {
    $table_info = $this->getPrefixInfo($table_name, $add_prefix);

    $condition = new Condition('AND');
    $condition = $this->connection->condition('AND');
    $condition->condition('table_schema', $table_info['database']);
    $condition->condition('table_name', $table_info['table'], $operator);
    return $condition;
+10 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\Core\Database\Driver\pgsql;

use Drupal\Core\Database\Query\Condition as QueryCondition;

/**
 * PostgreSQL implementation of \Drupal\Core\Database\Query\Condition.
 */
class Condition extends QueryCondition {}
+10 −0
Original line number Diff line number Diff line
<?php

namespace Drupal\Core\Database\Driver\sqlite;

use Drupal\Core\Database\Query\Condition as QueryCondition;

/**
 * SQLite implementation of \Drupal\Core\Database\Query\Condition.
 */
class Condition extends QueryCondition {}
Loading