jenkins-bot has submitted this change and it was merged.
Change subject: Convert to extension registration
......................................................................
Convert to extension registration
Change-Id: I0e3a2481d575c5e98844989e70e33b6f69c0e2aa
---
M RestBaseUpdateJobs.php
D RestbaseUpdate.php
A extension.json
3 files changed, 48 insertions(+), 120 deletions(-)
Approvals:
Legoktm: Looks good to me, approved
jenkins-bot: Verified
diff --git a/RestBaseUpdateJobs.php b/RestBaseUpdateJobs.php
index c79df6d..3e0c962 100644
--- a/RestBaseUpdateJobs.php
+++ b/RestBaseUpdateJobs.php
@@ -1,7 +1,14 @@
<?php
-/**
- * Entry point with same name as extension so jenkins can
- * load it
- */
-require_once __DIR__ . '/RestbaseUpdate.php';
+if ( function_exists( 'wfLoadExtension' ) ) {
+ wfLoadExtension( 'RestBaseUpdateJobs' );
+ // Keep i18n globals so mergeMessageFileList.php doesn't break
+ $wgMessagesDirs['RestBaseUpdateJobs'] = __DIR__ . '/i18n';
+ wfWarn(
+ 'Deprecated PHP entry point used for RestBaseUpdateJobs
extension. Please use wfLoadExtension instead, ' .
+ 'see https://www.mediawiki.org/wiki/Extension_registration for
more details.'
+ );
+ return;
+} else {
+ die( 'This version of the RestBaseupdateJobs extension requires
MediaWiki 1.25+' );
+}
diff --git a/RestbaseUpdate.php b/RestbaseUpdate.php
deleted file mode 100644
index 1a09bea..0000000
--- a/RestbaseUpdate.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-
-/**
- * Basic cache invalidation for RESTBase
- */
-if ( !defined( 'MEDIAWIKI' ) ) {
- echo "RestbaseUpdateJobs extension\n";
- exit( 1 );
-}
-
-/**
- * Class containing basic setup functions.
- */
-class RestbaseUpdateSetup {
- /**
- * Set up RestbaseUpdate.
- *
- * @return void
- */
- public static function setup() {
-
- global $wgAutoloadClasses, $wgJobClasses,
- $wgExtensionCredits, $wgExtensionMessagesFiles,
$wgMessagesDirs;
-
- $dir = __DIR__;
-
- # Set up class autoloading
- $wgAutoloadClasses['RestbaseUpdateHooks'] =
"$dir/RestbaseUpdate.hooks.php";
- $wgAutoloadClasses['RestbaseUpdateJob'] =
"$dir/RestbaseUpdateJob.php";
-
- # Add the job types
- $wgJobClasses['RestbaseUpdateJobOnEdit'] = 'RestbaseUpdateJob';
- $wgJobClasses['RestbaseUpdateJobOnDependencyChange'] =
'RestbaseUpdateJob';
-
- $wgExtensionCredits['other'][] = array(
- 'path' => __FILE__,
- 'name' => 'RestBaseUpdateJobs',
- 'author' => array(
- 'Gabriel Wicke',
- 'Marko Obrovac'
- ),
- 'version' => '0.2.1',
- 'url' =>
'https://www.mediawiki.org/wiki/Extension:RestBaseUpdateJobs',
- 'descriptionmsg' => 'restbaseupdatejobs-desc',
- 'license-name' => 'GPL-2.0+',
- );
-
- # Register localizations.
- $wgMessagesDirs['RestBaseUpdateJobs'] = __DIR__ . '/i18n';
-
- # Set up a default configuration
- self::setupDefaultConfig();
-
- # Now register our hooks.
- self::registerHooks();
-
- }
-
-
- /**
- * Set up default config values. Override after requiring the extension.
- *
- * @return void
- */
- protected static function setupDefaultConfig() {
-
- global $wgRestbaseServer, $wgRestbaseAPIVersion,
$wgRestbaseUpdateTitlesPerJob;
-
- /**
- * The RESTBase server to inform of updates.
- */
- $wgRestbaseServer = 'http://localhost:7231';
-
- /**
- * The RESTBase API version in use
- */
- $wgRestbaseAPIVersion = 'v1';
-
- /**
- * The number of recursive jobs to process in parallel
- */
- $wgRestbaseUpdateTitlesPerJob = 4;
-
- /**
- * The minimum number of jobs considered to be a 'big update'.
If the number
- * of actual jobs is lower than this threshold, all of the jobs
will be processed
- * a a single job partition.
- */
- $wgRestbaseNoMinThrottle = 20;
-
- }
-
-
- /**
- * Register hook handlers.
- *
- * @return void
- */
- protected static function registerHooks() {
-
- global $wgHooks;
-
- # Article edit/create
- $wgHooks['ArticleEditUpdates'][] =
'RestbaseUpdateHooks::onArticleEditUpdates';
- # File upload
- $wgHooks['FileUpload'][] = 'RestbaseUpdateHooks::onFileUpload';
- }
-
-
-}
-
-
-# Load hooks that are always set
-RestbaseUpdateSetup::setup();
-
diff --git a/extension.json b/extension.json
new file mode 100644
index 0000000..133d9fe
--- /dev/null
+++ b/extension.json
@@ -0,0 +1,36 @@
+{
+ "name": "RestBaseUpdateJobs",
+ "version": "0.2.1",
+ "author": [
+ "Gabriel Wicke",
+ "Marko Obrovac"
+ ],
+ "url": "https://www.mediawiki.org/wiki/Extension:RestBaseUpdateJobs",
+ "descriptionmsg": "restbaseupdatejobs-desc",
+ "license-name": "GPL-2.0+",
+ "type": "other",
+ "JobClasses": {
+ "RestbaseUpdateJobOnEdit": "RestbaseUpdateJob",
+ "RestbaseUpdateJobOnDependencyChange": "RestbaseUpdateJob"
+ },
+ "MessagesDirs": {
+ "RestBaseUpdateJobs": [
+ "i18n"
+ ]
+ },
+ "AutoloadClasses": {
+ "RestbaseUpdateHooks": "RestbaseUpdate.hooks.php",
+ "RestbaseUpdateJob": "RestbaseUpdateJob.php"
+ },
+ "Hooks": {
+ "ArticleEditUpdates":
"RestbaseUpdateHooks::onArticleEditUpdates",
+ "FileUpload": "RestbaseUpdateHooks::onFileUpload"
+ },
+ "config": {
+ "RestbaseServer": "http://localhost:7231",
+ "RestbaseAPIVersion": "v1",
+ "RestbaseUpdateTitlesPerJob": 4,
+ "RestbaseNoMinThrottle": 20
+ },
+ "manifest_version": 1
+}
--
To view, visit https://gerrit.wikimedia.org/r/298093
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I0e3a2481d575c5e98844989e70e33b6f69c0e2aa
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/RestBaseUpdateJobs
Gerrit-Branch: master
Gerrit-Owner: Reedy <[email protected]>
Gerrit-Reviewer: Legoktm <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits