MediaWiki  master
MaintainableDBConnRef.php
Go to the documentation of this file.
1 <?php
2 
3 namespace Wikimedia\Rdbms;
4 
14  public function tableName( $name, $format = 'quoted' ) {
15  return $this->__call( __FUNCTION__, func_get_args() );
16  }
17 
18  public function tableNames( ...$tables ) {
19  return $this->__call( __FUNCTION__, func_get_args() );
20  }
21 
22  public function tableNamesN( ...$tables ) {
23  return $this->__call( __FUNCTION__, func_get_args() );
24  }
25 
26  public function sourceFile(
27  $filename,
28  callable $lineCallback = null,
29  callable $resultCallback = null,
30  $fname = false,
31  callable $inputCallback = null
32  ) {
33  $this->assertRoleAllowsWrites();
34 
35  return $this->__call( __FUNCTION__, func_get_args() );
36  }
37 
38  public function sourceStream(
39  $fp,
40  callable $lineCallback = null,
41  callable $resultCallback = null,
42  $fname = __METHOD__,
43  callable $inputCallback = null
44  ) {
45  $this->assertRoleAllowsWrites();
46 
47  return $this->__call( __FUNCTION__, func_get_args() );
48  }
49 
50  public function dropTable( $table, $fname = __METHOD__ ) {
51  $this->assertRoleAllowsWrites();
52 
53  return $this->__call( __FUNCTION__, func_get_args() );
54  }
55 
56  public function truncate( $tables, $fname = __METHOD__ ) {
57  $this->assertRoleAllowsWrites();
58 
59  return $this->__call( __FUNCTION__, func_get_args() );
60  }
61 
62  public function deadlockLoop( ...$args ) {
63  $this->assertRoleAllowsWrites();
64 
65  return $this->__call( __FUNCTION__, func_get_args() );
66  }
67 
68  public function listViews( $prefix = null, $fname = __METHOD__ ) {
69  return $this->__call( __FUNCTION__, func_get_args() );
70  }
71 
72  public function textFieldSize( $table, $field ) {
73  return $this->__call( __FUNCTION__, func_get_args() );
74  }
75 
76  public function streamStatementEnd( &$sql, &$newLine ) {
77  return $this->__call( __FUNCTION__, func_get_args() );
78  }
79 
80  public function duplicateTableStructure(
81  $oldName, $newName, $temporary = false, $fname = __METHOD__
82  ) {
83  $this->assertRoleAllowsWrites();
84 
85  return $this->__call( __FUNCTION__, func_get_args() );
86  }
87 
88  public function tableLocksHaveTransactionScope() {
89  return $this->__call( __FUNCTION__, func_get_args() );
90  }
91 
92  public function lockTables( array $read, array $write, $method ) {
93  $this->assertRoleAllowsWrites();
94 
95  return $this->__call( __FUNCTION__, func_get_args() );
96  }
97 
98  public function unlockTables( $method ) {
99  $this->assertRoleAllowsWrites();
100 
101  return $this->__call( __FUNCTION__, func_get_args() );
102  }
103 
104  public function indexUnique( $table, $index, $fname = __METHOD__ ) {
105  return $this->__call( __FUNCTION__, func_get_args() );
106  }
107 
108  public function listTables( $prefix = null, $fname = __METHOD__ ) {
109  return $this->__call( __FUNCTION__, func_get_args() );
110  }
111 
112  public function fieldInfo( $table, $field ) {
113  return $this->__call( __FUNCTION__, func_get_args() );
114  }
115 }
116 
120 class_alias( MaintainableDBConnRef::class, 'MaintainableDBConnRef' );
Wikimedia\Rdbms\MaintainableDBConnRef\textFieldSize
textFieldSize( $table, $field)
Returns the size of a text field, or -1 for "unlimited".
Definition: MaintainableDBConnRef.php:72
Wikimedia\Rdbms\MaintainableDBConnRef\unlockTables
unlockTables( $method)
Unlock all tables locked via lockTables()
Definition: MaintainableDBConnRef.php:98
Wikimedia\Rdbms\MaintainableDBConnRef\listViews
listViews( $prefix=null, $fname=__METHOD__)
Lists all the VIEWs in the database.
Definition: MaintainableDBConnRef.php:68
Wikimedia\Rdbms\MaintainableDBConnRef\fieldInfo
fieldInfo( $table, $field)
mysql_fetch_field() wrapper Returns false if the field doesn't exist
Definition: MaintainableDBConnRef.php:112
Wikimedia\Rdbms
Definition: ChronologyProtector.php:24
Wikimedia\Rdbms\MaintainableDBConnRef\truncate
truncate( $tables, $fname=__METHOD__)
Delete all data in a table(s) and reset any sequences owned by that table(s)
Definition: MaintainableDBConnRef.php:56
Wikimedia\Rdbms\MaintainableDBConnRef
Helper class to handle automatically marking connections as reusable (via RAII pattern) as well handl...
Definition: MaintainableDBConnRef.php:13
Wikimedia\Rdbms\MaintainableDBConnRef\indexUnique
indexUnique( $table, $index, $fname=__METHOD__)
Determines if a given index is unique.
Definition: MaintainableDBConnRef.php:104
Wikimedia\Rdbms\MaintainableDBConnRef\listTables
listTables( $prefix=null, $fname=__METHOD__)
List all tables on the database.
Definition: MaintainableDBConnRef.php:108
Wikimedia\Rdbms\MaintainableDBConnRef\deadlockLoop
deadlockLoop(... $args)
Perform a deadlock-prone transaction.
Definition: MaintainableDBConnRef.php:62
$args
if( $line===false) $args
Definition: mcc.php:124
Wikimedia\Rdbms\MaintainableDBConnRef\duplicateTableStructure
duplicateTableStructure( $oldName, $newName, $temporary=false, $fname=__METHOD__)
Creates a new table with structure copied from existing table.
Definition: MaintainableDBConnRef.php:80
Wikimedia\Rdbms\DBConnRef\assertRoleAllowsWrites
assertRoleAllowsWrites()
Error out if the role is not DB_MASTER.
Definition: DBConnRef.php:779
Wikimedia\Rdbms\MaintainableDBConnRef\tableLocksHaveTransactionScope
tableLocksHaveTransactionScope()
Checks if table locks acquired by lockTables() are transaction-bound in their scope.
Definition: MaintainableDBConnRef.php:88
Wikimedia\Rdbms\MaintainableDBConnRef\sourceFile
sourceFile( $filename, callable $lineCallback=null, callable $resultCallback=null, $fname=false, callable $inputCallback=null)
Read and execute SQL commands from a file.
Definition: MaintainableDBConnRef.php:26
Wikimedia\Rdbms\MaintainableDBConnRef\dropTable
dropTable( $table, $fname=__METHOD__)
Delete a table.
Definition: MaintainableDBConnRef.php:50
Wikimedia\Rdbms\DBConnRef
Helper class used for automatically marking an IDatabase connection as reusable (once it no longer ma...
Definition: DBConnRef.php:29
Wikimedia\Rdbms\MaintainableDBConnRef\tableNames
tableNames(... $tables)
Fetch a number of table names into an array This is handy when you need to construct SQL for joins.
Definition: MaintainableDBConnRef.php:18
Wikimedia\Rdbms\MaintainableDBConnRef\streamStatementEnd
streamStatementEnd(&$sql, &$newLine)
Called by sourceStream() to check if we've reached a statement end.
Definition: MaintainableDBConnRef.php:76
Wikimedia\Rdbms\MaintainableDBConnRef\sourceStream
sourceStream( $fp, callable $lineCallback=null, callable $resultCallback=null, $fname=__METHOD__, callable $inputCallback=null)
Read and execute commands from an open file handle.
Definition: MaintainableDBConnRef.php:38
Wikimedia\Rdbms\MaintainableDBConnRef\tableName
tableName( $name, $format='quoted')
Format a table name ready for use in constructing an SQL query.
Definition: MaintainableDBConnRef.php:14
Wikimedia\Rdbms\MaintainableDBConnRef\lockTables
lockTables(array $read, array $write, $method)
Lock specific tables.
Definition: MaintainableDBConnRef.php:92
Wikimedia\Rdbms\IMaintainableDatabase
Advanced database interface for IDatabase handles that include maintenance methods.
Definition: IMaintainableDatabase.php:38
Wikimedia\Rdbms\MaintainableDBConnRef\tableNamesN
tableNamesN(... $tables)
Fetch a number of table names into an zero-indexed numerical array This is handy when you need to con...
Definition: MaintainableDBConnRef.php:22
Wikimedia\Rdbms\DBConnRef\__call
__call( $name, array $arguments)
Definition: DBConnRef.php:62