class StubConnection
Same name and namespace in other branches
- 9 core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php \Drupal\Tests\Core\Database\Stub\StubConnection
- 8.9.x core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php \Drupal\Tests\Core\Database\Stub\StubConnection
- 11.x core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php \Drupal\Tests\Core\Database\Stub\StubConnection
A stub of the abstract Connection class for testing purposes.
Includes minimal implementations of Connection's abstract methods.
Hierarchy
- class \Drupal\Core\Database\Connection
- class \Drupal\Tests\Core\Database\Stub\StubConnection implements \Drupal\Core\Database\Connection
Expanded class hierarchy of StubConnection
7 files declare their use of StubConnection
- CacheTest.php in core/
tests/ Drupal/ Tests/ Core/ Cache/ CacheTest.php - ConditionTest.php in core/
tests/ Drupal/ Tests/ Core/ Database/ ConditionTest.php - ConnectionTest.php in core/
tests/ Drupal/ Tests/ Core/ Database/ ConnectionTest.php - DatabaseEventsTest.php in core/
tests/ Drupal/ Tests/ Core/ Database/ DatabaseEventsTest.php - LogTest.php in core/
tests/ Drupal/ Tests/ Core/ Database/ LogTest.php
File
-
core/
tests/ Drupal/ Tests/ Core/ Database/ Stub/ StubConnection.php, line 25
Namespace
Drupal\Tests\Core\Database\StubView source
class StubConnection extends Connection {
/**
* {@inheritdoc}
*/
protected $statementWrapperClass = StatementWrapper::class;
/**
* Public property so we can test driver loading mechanism.
*
* @var string
* @see driver().
*/
public $driver = 'stub';
/**
* Constructs a Connection object.
*
* @param \PDO $connection
* An object of the PDO class representing a database connection.
* @param array $connection_options
* An array of options for the connection.
* @param string[]|null $identifier_quotes
* The identifier quote characters. Defaults to an empty strings.
*/
public function __construct(\PDO $connection, array $connection_options, $identifier_quotes = [
'',
'',
]) {
$this->identifierQuotes = $identifier_quotes;
parent::__construct($connection, $connection_options);
}
/**
* {@inheritdoc}
*/
public static function open(array &$connection_options = []) {
return new \stdClass();
}
/**
* {@inheritdoc}
*/
public function queryRange($query, $from, $count, array $args = [], array $options = []) {
return NULL;
}
/**
* {@inheritdoc}
*/
public function driver() {
return $this->driver;
}
/**
* {@inheritdoc}
*/
public function databaseType() {
return 'stub';
}
/**
* {@inheritdoc}
*/
public function createDatabase($database) {
}
/**
* {@inheritdoc}
*/
public function mapConditionOperator($operator) {
return NULL;
}
/**
* {@inheritdoc}
*/
public function nextId($existing_id = 0) {
@trigger_error('Drupal\\Core\\Database\\Connection::nextId() is deprecated in drupal:10.2.0 and is removed from drupal:11.0.0. Modules should use instead the keyvalue storage for the last used id. See https://www.drupal.org/node/3349345', E_USER_DEPRECATED);
return 0;
}
/**
* Helper method to test database classes are not included in backtraces.
*
* @return array
* The caller stack entry.
*/
public function testLogCaller() {
return (new Log())->findCaller();
}
/**
* {@inheritdoc}
*/
public function exceptionHandler() {
return new ExceptionHandler();
}
/**
* {@inheritdoc}
*/
public function select($table, $alias = NULL, array $options = []) {
return new Select($this, $table, $alias, $options);
}
/**
* {@inheritdoc}
*/
public function insert($table, array $options = []) {
return new Insert($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function merge($table, array $options = []) {
return new Merge($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function upsert($table, array $options = []) {
return new StubUpsert($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function update($table, array $options = []) {
return new Update($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function delete($table, array $options = []) {
return new Delete($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function truncate($table, array $options = []) {
return new Truncate($this, $table, $options);
}
/**
* {@inheritdoc}
*/
public function schema() {
if (empty($this->schema)) {
$this->schema = new Schema();
}
return $this->schema;
}
/**
* {@inheritdoc}
*/
public function condition($conjunction) {
return new StubCondition($conjunction);
}
/**
* {@inheritdoc}
*/
public function startTransaction($name = '') {
return new Transaction($this, $name);
}
}
Members
Title Sort descending | Deprecated | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|---|
Connection::$connection | protected | property | The actual client connection. | |||
Connection::$connectionOptions | protected | property | The connection information for this connection object. | |||
Connection::$driverClasses | protected | property | Index of what driver-specific class to use for various operations. | |||
Connection::$enabledEvents | private | property | Tracks the database API events to be dispatched. | |||
Connection::$escapedAliases | protected | property | List of escaped aliases names, keyed by unescaped aliases. | |||
Connection::$escapedFields | protected | property | List of escaped field names, keyed by unescaped names. | |||
Connection::$escapedTables | protected | property | List of escaped table names, keyed by unescaped names. | |||
Connection::$identifierQuotes | protected | property | The identifier quote characters for the database type. | 4 | ||
Connection::$key | protected | property | The key representing this connection. | |||
Connection::$logger | protected | property | The current database logging object for this connection. | |||
Connection::$prefix | protected | property | The prefix used by this database connection. | |||
Connection::$prefixes | Deprecated | protected | property | The prefixes used by this database connection. | ||
Connection::$prefixReplace | Deprecated | protected | property | List of replacement values for use in prefixTables(). | ||
Connection::$prefixSearch | Deprecated | protected | property | List of search values for use in prefixTables(). | ||
Connection::$rootTransactionEndCallbacks | Deprecated | protected | property | Post-root (non-nested) transaction commit callbacks. | ||
Connection::$schema | protected | property | The schema object for this connection. | 5 | ||
Connection::$tablePlaceholderReplacements | protected | property | Replacements to fully qualify {table} placeholders in SQL strings. | |||
Connection::$target | protected | property | The database target this connection is for. | |||
Connection::$transactionalDDLSupport | protected | property | Whether this database connection supports transactional DDL. | 2 | ||
Connection::$transactionLayers | Deprecated | protected | property | Tracks the number of "layers" of transactions currently active. | ||
Connection::$transactionManager | protected | property | The transaction manager. | |||
Connection::$unprefixedTablesMap | Deprecated | protected | property | List of un-prefixed table names, keyed by prefixed table names. | ||
Connection::addRootTransactionEndCallback | Deprecated | public | function | Adds a root transaction end callback. | ||
Connection::attachDatabase | public | function | Allows the connection to access additional databases. | 1 | ||
Connection::clientVersion | public | function | Returns the version of the database client. | |||
Connection::commit | Deprecated | public | function | Throws an exception to deny direct access to transaction commits. | ||
Connection::commitAll | public | function | Commits all the open transactions. | |||
Connection::createConnectionOptionsFromUrl | public static | function | Creates an array of database connection options from a URL. | 1 | ||
Connection::createUrlFromConnectionOptions | public static | function | Creates a URL from an array of database connection options. | 1 | ||
Connection::defaultOptions | protected | function | Returns the default query options for any given query. | |||
Connection::disableEvents | public | function | Disables database API events dispatching. | |||
Connection::dispatchEvent | public | function | Dispatches a database API event via the container dispatcher. | |||
Connection::doCommit | Deprecated | protected | function | Do the actual commit, invoke post-commit callbacks. | ||
Connection::driverTransactionManager | protected | function | Returns a new instance of the driver's transaction manager. | 3 | ||
Connection::enableEvents | public | function | Enables database API events dispatching. | |||
Connection::escapeAlias | public | function | Escapes an alias name string. | |||
Connection::escapeDatabase | public | function | Escapes a database name string. | |||
Connection::escapeField | public | function | Escapes a field name string. | |||
Connection::escapeLike | public | function | Escapes characters that work as wildcard characters in a LIKE pattern. | |||
Connection::escapeTable | public | function | Escapes a table name string. | |||
Connection::expandArguments | protected | function | Expands out shorthand placeholders. | |||
Connection::filterComment | protected | function | Sanitize a query comment string. | |||
Connection::findCallerFromDebugBacktrace | public | function | Determine the last non-database method that called the database API. | |||
Connection::getClientConnection | public | function | Returns the client-level database connection object. | |||
Connection::getConnectionOptions | public | function | Returns the connection information for this connection object. | |||
Connection::getDebugBacktrace | protected | function | Gets the debug backtrace. | |||
Connection::getDriverClass | public | function | Gets the driver-specific override class if any for the specified class. | |||
Connection::getFullQualifiedTableName | public | function | Get a fully qualified table name. | 2 | ||
Connection::getKey | public | function | Returns the key this connection is associated with. | |||
Connection::getLogger | public | function | Gets the current logging object for this connection. | |||
Connection::getPagerManager | public | function | Get the pager manager service, if available. | |||
Connection::getPrefix | public | function | Returns the prefix of the tables. | |||
Connection::getProvider | public | function | Get the module name of the module that is providing the database driver. | |||
Connection::getSQLState | protected static | function | Extracts the SQLSTATE error from a PDOException. | |||
Connection::getTarget | public | function | Returns the target this connection is associated with. | |||
Connection::getUnprefixedTablesMap | Deprecated | public | function | Gets a list of individually prefixed table names. | ||
Connection::hasJson | public | function | Runs a simple query to validate json datatype support. | 1 | ||
Connection::inTransaction | public | function | Determines if there is an active transaction open. | |||
Connection::isEventEnabled | public | function | Returns the status of a database API event toggle. | |||
Connection::lastInsertId | public | function | Returns the ID of the last inserted row or sequence value. | |||
Connection::makeComment | public | function | Flatten an array of query comments into a single comment string. | |||
Connection::makeSequenceName | Deprecated | public | function | Creates the appropriate sequence name for a given table and serial field. | 1 | |
Connection::popCommittableTransactions | Deprecated | protected | function | Commit all the transaction layers that can commit. | ||
Connection::popTransaction | Deprecated | public | function | Decreases the depth of transaction nesting. | ||
Connection::prefixTables | public | function | Appends a database prefix to all tables in a query. | |||
Connection::prepareStatement | public | function | Returns a prepared statement given a SQL string. | 2 | ||
Connection::preprocessStatement | protected | function | Returns a string SQL statement ready for preparation. | |||
Connection::pushTransaction | Deprecated | public | function | Increases the depth of transaction nesting. | ||
Connection::query | public | function | Executes a query string against the database. | 1 | ||
Connection::quote | public | function | Quotes a string for use in a query. | |||
Connection::quoteIdentifiers | public | function | Quotes all identifiers in a query. | |||
Connection::removeDatabaseEntriesFromDebugBacktrace | public static | function | Removes database related calls from a backtrace array. | |||
Connection::rollBack | Deprecated | public | function | Rolls back the transaction entirely or to a named savepoint. | ||
Connection::setKey | public | function | Tells this connection object what its key is. | |||
Connection::setLogger | public | function | Associates a logging object with this connection. | |||
Connection::setPrefix | protected | function | Set the prefix used by this database connection. | 1 | ||
Connection::setTarget | public | function | Tells this connection object what its target value is. | |||
Connection::supportsTransactionalDDL | public | function | Determines if this driver supports transactional DDL. | |||
Connection::tablePrefix | Deprecated | public | function | Find the prefix for a table. | ||
Connection::transactionDepth | Deprecated | public | function | Determines the current transaction depth. | ||
Connection::transactionManager | public | function | Returns the transaction manager. | |||
Connection::version | public | function | Returns the version of the database server. | 1 | ||
Connection::__destruct | public | function | Ensures that the client connection can be garbage collected. | 2 | ||
Connection::__sleep | public | function | Prevents the database connection from being serialized. | |||
StubConnection::$driver | public | property | Public property so we can test driver loading mechanism. | |||
StubConnection::$statementWrapperClass | protected | property | The name of the StatementWrapper class for this connection. | Overrides Connection::$statementWrapperClass | ||
StubConnection::condition | public | function | Prepares and returns a CONDITION query object. | Overrides Connection::condition | ||
StubConnection::createDatabase | public | function | Creates a database. | Overrides Connection::createDatabase | ||
StubConnection::databaseType | public | function | Returns the name of the database engine accessed by this driver. | Overrides Connection::databaseType | ||
StubConnection::delete | public | function | Prepares and returns a DELETE query object. | Overrides Connection::delete | ||
StubConnection::driver | public | function | Returns the type of database driver. | Overrides Connection::driver | ||
StubConnection::exceptionHandler | public | function | Returns the database exceptions handler. | Overrides Connection::exceptionHandler | ||
StubConnection::insert | public | function | Prepares and returns an INSERT query object. | Overrides Connection::insert | ||
StubConnection::mapConditionOperator | public | function | Gets any special processing requirements for the condition operator. | Overrides Connection::mapConditionOperator | ||
StubConnection::merge | public | function | Prepares and returns a MERGE query object. | Overrides Connection::merge | ||
StubConnection::nextId | public | function | Retrieves a unique ID from a given sequence. | Overrides Connection::nextId | ||
StubConnection::open | public static | function | Opens a client connection. | Overrides Connection::open | ||
StubConnection::queryRange | public | function | Runs a limited-range query on this database object. | Overrides Connection::queryRange | ||
StubConnection::schema | public | function | Returns a DatabaseSchema object for manipulating the schema. | Overrides Connection::schema | ||
StubConnection::select | public | function | Prepares and returns a SELECT query object. | Overrides Connection::select | ||
StubConnection::startTransaction | public | function | Returns a new DatabaseTransaction object on this connection. | Overrides Connection::startTransaction | ||
StubConnection::testLogCaller | public | function | Helper method to test database classes are not included in backtraces. | |||
StubConnection::truncate | public | function | Prepares and returns a TRUNCATE query object. | Overrides Connection::truncate | ||
StubConnection::update | public | function | Prepares and returns an UPDATE query object. | Overrides Connection::update | ||
StubConnection::upsert | public | function | Prepares and returns an UPSERT query object. | Overrides Connection::upsert | ||
StubConnection::__construct | public | function | Constructs a Connection object. | Overrides Connection::__construct |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.