Merge "Import: Fix incorrect wfRunHooks usage"
[lhc/web/wiklou.git] / maintenance / storage / dumpRev.php
index 167d86c..3fffb82 100644 (file)
@@ -1,5 +1,7 @@
 <?php
 /**
+ * Get the text of a revision, resolving external storage if needed.
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  * http://www.gnu.org/copyleft/gpl.html
  *
+ * @file
  * @ingroup Maintenance ExternalStorage
  */
 
-require_once( dirname(__FILE__) . '/../Maintenance.php' );
+require_once( __DIR__ . '/../Maintenance.php' );
 
+/**
+ * Maintenance script that gets the text of a revision,
+ * resolving external storage if needed.
+ *
+ * @ingroup Maintenance ExternalStorage
+ */
 class DumpRev extends Maintenance {
        public function __construct() {
                parent::__construct();
@@ -28,16 +37,16 @@ class DumpRev extends Maintenance {
 
        public function execute() {
                $dbr = wfGetDB( DB_SLAVE );
-               $row = $dbr->selectRow( 
-                       array( 'text', 'revision' ), 
-                       array( 'old_flags', 'old_text' ), 
+               $row = $dbr->selectRow(
+                       array( 'text', 'revision' ),
+                       array( 'old_flags', 'old_text' ),
                        array( 'old_id=rev_text_id', 'rev_id' => $this->getArg() )
                );
                if ( !$row ) {
                        $this->error( "Row not found", true );
                }
-       
-               $flags = explode( ',',  $row->old_flags );
+
+               $flags = explode( ',', $row->old_flags );
                $text = $row->old_text;
                if ( in_array( 'external', $flags ) ) {
                        $this->output( "External $text\n" );
@@ -62,17 +71,18 @@ class DumpRev extends Maintenance {
                        $text = gzinflate( $text );
                }
                if ( in_array( 'object', $flags ) ) {
-                       $text = unserialize( $text );
+                       $obj = unserialize( $text );
+                       $text = $obj->getText();
                }
-       
+
                if ( is_object( $text ) ) {
                        $this->error( "Unexpectedly got object of type: " . get_class( $text ) );
                } else {
-                       $this->output( "Text length: " . strlen( $text ) ."\n" );
+                       $this->output( "Text length: " . strlen( $text ) . "\n" );
                        $this->output( substr( $text, 0, 100 ) . "\n" );
                }
        }
 }
 
 $maintClass = "DumpRev";
-require_once( DO_MAINTENANCE );
+require_once( RUN_MAINTENANCE_IF_MAIN );