Mattflaschen has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/192054

Change subject: Refactor moderation logging
......................................................................

Refactor moderation logging

* Move PostModerationLogger to Listener namespace/directory (since it
  is one) and rename.
* Rename Logger to ModerationLogger to reflect that's what it's for.
  Before this round, it already had a comment indicating it was
  specific to suppression:

  
https://git.wikimedia.org/blob/mediawiki%2Fextensions%2FFlow.git/253544059db40123b3629a95744350ba40f2addb/includes%2FLog%2FLogger.php#L48

  After https://gerrit.wikimedia.org/r/#/c/191543/ is merged, it
  will also explicitly use $post->getModerationTimestamp()

Change-Id: Ib7b9177522a0e238c1b15c8e8e13ff27f6cf89af
---
M FlowActions.php
M autoload.php
M container.php
R includes/Data/Listener/ModerationLoggingListener.php
R includes/Log/ModerationLogger.php
M maintenance/FlowAddMissingModerationLogs.php
6 files changed, 25 insertions(+), 24 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Flow 
refs/changes/54/192054/1

diff --git a/FlowActions.php b/FlowActions.php
index 28d5dce..bf6adc5 100644
--- a/FlowActions.php
+++ b/FlowActions.php
@@ -5,7 +5,7 @@
 use Flow\Model\PostSummary;
 use Flow\Model\Header;
 use Flow\RevisionActionPermissions;
-use Flow\Log\Logger;
+use Flow\Log\ModerationLogger;
 use Flow\Data\Listener\RecentChangesListener;
 
 /**
@@ -399,7 +399,7 @@
 
        'restore-post' => array(
                'performs-writes' => true,
-               'log_type' => function( PostRevision $revision, Logger $logger 
) {
+               'log_type' => function( PostRevision $revision, 
ModerationLogger $logger ) {
                        $post = $revision->getCollection();
                        $previousRevision = $post->getPrevRevision( $revision );
                        if ( $previousRevision ) {
@@ -452,7 +452,7 @@
 
        'restore-topic' => array(
                'performs-writes' => true,
-               'log_type' => function( PostRevision $revision, Logger $logger 
) {
+               'log_type' => function( PostRevision $revision, 
ModerationLogger $logger ) {
                        $post = $revision->getCollection();
                        $previousRevision = $post->getPrevRevision( $revision );
                        if ( $previousRevision ) {
diff --git a/autoload.php b/autoload.php
index 593efa1..76716b0 100644
--- a/autoload.php
+++ b/autoload.php
@@ -83,6 +83,7 @@
        'Flow\\Data\\Listener\\DeferredInsertLifecycleHandler' => __DIR__ . 
'/includes/Data/Listener/DeferredInsertLifecycleHandler.php',
        'Flow\\Data\\Listener\\EditCountListener' => __DIR__ . 
'/includes/Data/Listener/EditCountListener.php',
        'Flow\\Data\\Listener\\ImmediateWatchTopicListener' => __DIR__ . 
'/includes/Data/Listener/WatchTopicListener.php',
+       'Flow\\Data\\Listener\\ModerationLoggingListener' => __DIR__ . 
'/includes/Data/Listener/ModerationLoggingListener.php',
        'Flow\\Data\\Listener\\NotificationListener' => __DIR__ . 
'/includes/Data/Listener/NotificationListener.php',
        'Flow\\Data\\Listener\\OccupationListener' => __DIR__ . 
'/includes/Data/Listener/OccupationListener.php',
        'Flow\\Data\\Listener\\RecentChangesListener' => __DIR__ . 
'/includes/Data/Listener/RecentChangesListener.php',
@@ -224,9 +225,8 @@
        'Flow\\Import\\Wikitext\\ImportSource' => __DIR__ . 
'/includes/Import/Wikitext/ImportSource.php',
        'Flow\\LinksTableUpdater' => __DIR__ . 
'/includes/LinksTableUpdater.php',
        'Flow\\Log\\ActionFormatter' => __DIR__ . 
'/includes/Log/ActionFormatter.php',
-       'Flow\\Log\\Logger' => __DIR__ . '/includes/Log/Logger.php',
        'Flow\\Log\\LqtImportFormatter' => __DIR__ . 
'/includes/Log/LqtImportFormatter.php',
-       'Flow\\Log\\PostModerationLogger' => __DIR__ . 
'/includes/Log/PostModerationLogger.php',
+       'Flow\\Log\\ModerationLogger' => __DIR__ . 
'/includes/Log/ModerationLogger.php',
        'Flow\\Model\\AbstractRevision' => __DIR__ . 
'/includes/Model/AbstractRevision.php',
        'Flow\\Model\\AbstractSummary' => __DIR__ . 
'/includes/Model/AbstractSummary.php',
        'Flow\\Model\\Anchor' => __DIR__ . '/includes/Model/Anchor.php',
diff --git a/container.php b/container.php
index dbe3f0a..798320a 100644
--- a/container.php
+++ b/container.php
@@ -529,9 +529,9 @@
                $c['repository.tree']
        );
 } );
-$c['storage.post.listeners.moderation_logger'] = $c->share( function( $c ) {
-       return new Flow\Log\PostModerationLogger(
-               $c['logger']
+$c['storage.post.listeners.moderation_logging'] = $c->share( function( $c ) {
+       return new Flow\Data\Listener\ModerationLoggingListener(
+               $c['logger.moderation']
        );
 } );
 $c['storage.post.listeners.username'] = $c->share( function( $c ) {
@@ -569,7 +569,7 @@
                $c['storage.post.listeners.username'],
                $c['storage.post.listeners.watch_topic'],
                $c['storage.post.listeners.notification'],
-               $c['storage.post.listeners.moderation_logger'],
+               $c['storage.post.listeners.moderation_logging'],
                $c['listener.recentchanges'],
                $c['listener.editcount'],
                // topic history -- to keep a history by topic we have to know 
what topic every post
@@ -978,8 +978,8 @@
                $c['formatter.revision']
        );
 } );
-$c['logger'] = $c->share( function( $c ) {
-       return new Flow\Log\Logger(
+$c['logger.moderation'] = $c->share( function( $c ) {
+       return new Flow\Log\ModerationLogger(
                $c['flow_actions'],
                $c['user']
        );
diff --git a/includes/Log/PostModerationLogger.php 
b/includes/Data/Listener/ModerationLoggingListener.php
similarity index 80%
rename from includes/Log/PostModerationLogger.php
rename to includes/Data/Listener/ModerationLoggingListener.php
index d096424..2f601bf 100644
--- a/includes/Log/PostModerationLogger.php
+++ b/includes/Data/Listener/ModerationLoggingListener.php
@@ -1,20 +1,21 @@
 <?php
 
-namespace Flow\Log;
+namespace Flow\Data\Listener;
 
 use Flow\Data\LifecycleHandler;
+use Flow\Log\ModerationLogger;
 use Flow\Model\AbstractRevision;
 use Flow\Model\PostRevision;
 
-class PostModerationLogger implements LifecycleHandler {
+class ModerationLoggingListener implements LifecycleHandler {
 
        /**
-        * @var Logger
+        * @var ModerationLogger
         */
-       protected $logger;
+       protected $moderationLogger;
 
-       function __construct( Logger $logger ) {
-               $this->logger = $logger;
+       function __construct( ModerationLogger $moderationLogger ) {
+               $this->moderationLogger = $moderationLogger;
        }
 
        /**
@@ -47,7 +48,7 @@
                        return;
                }
 
-               if ( $this->logger->canLog( $post, $post->getChangeType() ) ) {
+               if ( $this->moderationLogger->canLog( $post, 
$post->getChangeType() ) ) {
                        $workflowId = $post->getRootPost()->getPostId();
                        $logParams = array();
 
@@ -57,7 +58,7 @@
                                $logParams['postId'] = $post->getRevisionId();
                        }
 
-                       $this->logger->log(
+                       $this->moderationLogger->log(
                                $post,
                                $post->getChangeType(),
                                $post->getModeratedReason(),
diff --git a/includes/Log/Logger.php b/includes/Log/ModerationLogger.php
similarity index 98%
rename from includes/Log/Logger.php
rename to includes/Log/ModerationLogger.php
index 9c1e5f9..d255472 100644
--- a/includes/Log/Logger.php
+++ b/includes/Log/ModerationLogger.php
@@ -12,7 +12,7 @@
 use Title;
 use User;
 
-class Logger {
+class ModerationLogger {
 
        /**
         * @var User
diff --git a/maintenance/FlowAddMissingModerationLogs.php 
b/maintenance/FlowAddMissingModerationLogs.php
index 6506b08..5c75103 100644
--- a/maintenance/FlowAddMissingModerationLogs.php
+++ b/maintenance/FlowAddMissingModerationLogs.php
@@ -1,7 +1,7 @@
 <?php
 
 use Flow\Container;
-use Flow\Log\PostModerationLogger;
+use Flow\Data\Listener\ModerationLoggingListener;
 use Flow\Model\UUID;
 
 require_once ( getenv( 'MW_INSTALL_PATH' ) !== false
@@ -37,7 +37,7 @@
 
                $storage = $container['storage'];
 
-               $moderationLogger = 
$container['storage.post.listeners.moderation_logger'];
+               $moderationLoggingListener = 
$container['storage.post.listeners.moderation_logging'];
 
                $rowIterator = new EchoBatchRowIterator(
                        $dbw,
@@ -53,7 +53,7 @@
 
                // Fetch rows that are a moderation action
                $rowIterator->addConditions( array(
-                       'rev_change_type' => 
PostModerationLogger::getModerationChangeTypes(),
+                       'rev_change_type' => 
ModerationLoggingListener::getModerationChangeTypes(),
                ) );
 
                $start = $this->getOption( 'start' );
@@ -87,7 +87,7 @@
                                        continue;
                                }
 
-                               $moderationLogger->onAfterInsert( $obj, 
array(), array() );
+                               $moderationLoggingListener->onAfterInsert( 
$obj, array(), array() );
                        }
 
                        $dbw->commit();

-- 
To view, visit https://gerrit.wikimedia.org/r/192054
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib7b9177522a0e238c1b15c8e8e13ff27f6cf89af
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Flow
Gerrit-Branch: master
Gerrit-Owner: Mattflaschen <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to