Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
LoadExtensionSchemaUpdatesHookHandler
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
30
0.00% covered (danger)
0.00%
0 / 1
 onLoadExtensionSchemaUpdates
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 1
30
1<?php
2
3namespace MediaWiki\Extension\OAuthRateLimiter;
4
5use DatabaseUpdater;
6use MediaWiki\Extension\OAuth\Backend\Utils;
7use MediaWiki\Installer\Hook\LoadExtensionSchemaUpdatesHook;
8
9class LoadExtensionSchemaUpdatesHookHandler implements LoadExtensionSchemaUpdatesHook {
10
11    /**
12     * @param DatabaseUpdater $updater
13     * @return bool|void
14     */
15    public function onLoadExtensionSchemaUpdates( $updater ) {
16        if ( !Utils::isCentralWiki() ) {
17            // no tables to add
18            return true;
19        }
20
21        $dbType = $updater->getDB()->getType();
22
23        if ( $dbType === 'mysql' ) {
24            $updater->addExtensionTable(
25                'oauth_ratelimit_client_tier',
26                dirname( __DIR__ ) . '/schema/tables-generated.sql'
27            );
28        } elseif ( $dbType === 'sqlite' || $dbType === 'postgres' ) {
29            $updater->addExtensionTable(
30                'oauth_ratelimit_client_tier',
31                dirname( __DIR__ ) . '/schema/' . $dbType . '/tables-generated.sql'
32            );
33        }
34    }
35}