Short circuit in notifyRCFeeds

Save instantiating classes unnecesserily

Add getEngine return type hint. Also make public

Change-Id: Ie2610516f99fe7b01742e7e95e13c4b1b90c77d7
This commit is contained in:
Reedy 2014-01-22 07:14:13 +00:00
parent 60f114d8f5
commit 896149ec79

View file

@ -336,14 +336,6 @@ class RecentChange {
global $wgRCFeeds;
foreach ( $wgRCFeeds as $feed ) {
$engine = self::getEngine( $feed['uri'] );
if ( isset( $this->mExtra['actionCommentIRC'] ) ) {
$actionComment = $this->mExtra['actionCommentIRC'];
} else {
$actionComment = null;
}
$omitBots = isset( $feed['omit_bots'] ) ? $feed['omit_bots'] : false;
if (
@ -353,6 +345,14 @@ class RecentChange {
continue;
}
$engine = self::getEngine( $feed['uri'] );
if ( isset( $this->mExtra['actionCommentIRC'] ) ) {
$actionComment = $this->mExtra['actionCommentIRC'];
} else {
$actionComment = null;
}
/** @var $formatter RCFeedFormatter */
$formatter = new $feed['formatter']();
$line = $formatter->getLine( $feed, $this, $actionComment );
@ -366,9 +366,9 @@ class RecentChange {
*
* @param string $uri URI to get the engine object for
* @throws MWException
* @return object The engine object
* @return RCFeedEngine The engine object
*/
private static function getEngine( $uri ) {
public static function getEngine( $uri ) {
global $wgRCEngines;
$scheme = parse_url( $uri, PHP_URL_SCHEME );