MediaWiki
master
generateSchemaSql.php
Go to the documentation of this file.
1
<?php
2
25
use
Wikimedia\Rdbms\DoctrineSchemaBuilderFactory
;
26
27
require_once __DIR__ .
'/includes/SchemaMaintenance.php'
;
28
34
class
GenerateSchemaSql
extends
SchemaMaintenance
{
35
public
function
__construct
() {
36
parent::__construct();
37
$this->
addDescription
(
'Build SQL files from abstract JSON files'
);
38
$this->scriptName =
'generateSchemaSql.php'
;
39
}
40
41
protected
function
generateSchema
(
string
$platform, array $schema ): string {
42
$schemaBuilder = ( new
DoctrineSchemaBuilderFactory
() )->getSchemaBuilder( $platform );
43
44
foreach
( $schema as $table ) {
45
$schemaBuilder->addTable( $table );
46
}
47
$tableSqls = $schemaBuilder->getSql();
48
49
$sql = $this->
cleanupSqlArray
( $platform, $tableSqls );
50
51
return
$sql;
52
}
53
54
}
55
56
$maintClass
= GenerateSchemaSql::class;
57
require_once RUN_MAINTENANCE_IF_MAIN;
GenerateSchemaSql
Maintenance script to generate schema from abstract json files.
Definition
generateSchemaSql.php:34
GenerateSchemaSql\generateSchema
generateSchema(string $platform, array $schema)
Definition
generateSchemaSql.php:41
GenerateSchemaSql\__construct
__construct()
Default constructor.
Definition
generateSchemaSql.php:35
Maintenance\addDescription
addDescription( $text)
Set the description text.
Definition
Maintenance.php:329
SchemaMaintenance
Definition
SchemaMaintenance.php:32
SchemaMaintenance\cleanupSqlArray
cleanupSqlArray(string $platform, array $sqlArray)
Takes the output of DoctrineSchemaBuilder::getSql() or DoctrineSchemaChangeBuilder::getSchemaChangeSq...
Definition
SchemaMaintenance.php:216
Wikimedia\Rdbms\DoctrineSchemaBuilderFactory
@experimental
Definition
DoctrineSchemaBuilderFactory.php:14
$maintClass
$maintClass
Definition
generateSchemaSql.php:56
maintenance
generateSchemaSql.php
Generated on Thu Apr 25 2024 14:24:10 for MediaWiki by
1.10.0