X-Git-Url: http://git.cyclocoop.org/?a=blobdiff_plain;f=includes%2FImport.php;h=b3ca0416359e41dfd9d5da1a75c9c7156a18f5f8;hb=0aa7ba71e0034b0a4a17722cdaa326d3fb76be01;hp=79df693e466ed0c1b36c39b44713cc9a5284d240;hpb=9392d01c4e95be3c156ad594d8a8b6aa678daa7d;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/Import.php b/includes/Import.php index 79df693e46..b3ca041635 100644 --- a/includes/Import.php +++ b/includes/Import.php @@ -40,12 +40,12 @@ class WikiImporter { /** * Creates an ImportXMLReader drawing from the source provided - * @param string $source + * @param ImportStreamSource $source */ - function __construct( $source ) { + function __construct( ImportStreamSource $source ) { $this->reader = new XMLReader(); - if ( !in_array( 'uploadsource', stream_get_wrappers() ) ) { + if ( !in_array( 'uploadsource', stream_get_wrappers() ) ) { stream_wrapper_register( 'uploadsource', 'UploadSourceAdapter' ); } $id = UploadSourceAdapter::registerSource( $source ); @@ -395,8 +395,8 @@ class WikiImporter { /** * Retrieves the contents of the named attribute of the current element. - * @param string $attr the name of the attribute - * @return string the value of the attribute or an empty string if it is not set in the current element. + * @param string $attr The name of the attribute + * @return string The value of the attribute or an empty string if it is not set in the current element. */ public function nodeAttribute( $attr ) { return $this->reader->getAttribute( $attr ); @@ -429,53 +429,12 @@ class WikiImporter { return ''; } - # -------------- - - /** Left in for debugging */ - private function dumpElement() { - static $lookup = null; - if ( !$lookup ) { - $xmlReaderConstants = array( - "NONE", - "ELEMENT", - "ATTRIBUTE", - "TEXT", - "CDATA", - "ENTITY_REF", - "ENTITY", - "PI", - "COMMENT", - "DOC", - "DOC_TYPE", - "DOC_FRAGMENT", - "NOTATION", - "WHITESPACE", - "SIGNIFICANT_WHITESPACE", - "END_ELEMENT", - "END_ENTITY", - "XML_DECLARATION", - ); - $lookup = array(); - - foreach ( $xmlReaderConstants as $name ) { - $lookup[constant( "XmlReader::$name" )] = $name; - } - } - - print var_dump( - $lookup[$this->reader->nodeType], - $this->reader->name, - $this->reader->value - ) . "\n\n"; - } - /** * Primary entry point * @throws MWException * @return bool */ public function doImport() { - // Calls to reader->read need to be wrapped in calls to // libxml_disable_entity_loader() to avoid local file // inclusion attacks (bug 46932). @@ -533,7 +492,7 @@ class WikiImporter { private function handleSiteInfo() { // Site info is useful, but not actually used for dump imports. // Includes a quick short-circuit to save performance. - if ( ! $this->mSiteInfoCallback ) { + if ( !$this->mSiteInfoCallback ) { $this->reader->next(); return true; } @@ -944,10 +903,10 @@ class UploadSourceAdapter { private $mPosition; /** - * @param string $source + * @param ImportStreamSource $source * @return string */ - static function registerSource( $source ) { + static function registerSource( ImportStreamSource $source ) { $id = wfRandomString(); self::$sourceRegistrations[$id] = $source; @@ -1050,30 +1009,6 @@ class UploadSourceAdapter { } } -class XMLReader2 extends XMLReader { - - /** - * @return bool|string - */ - function nodeContents() { - if ( $this->isEmptyElement ) { - return ""; - } - $buffer = ""; - while ( $this->read() ) { - switch ( $this->nodeType ) { - case XmlReader::TEXT: - case XmlReader::SIGNIFICANT_WHITESPACE: - $buffer .= $this->value; - break; - case XmlReader::END_ELEMENT: - return $buffer; - } - } - return $this->close(); - } -} - /** * @todo document (e.g. one-sentence class description). * @ingroup SpecialPage @@ -1503,6 +1438,7 @@ class WikiRevision { $linkCache->clear(); $page = WikiPage::factory( $this->title ); + $page->loadPageData( 'fromdbmaster' ); if ( !$page->exists() ) { # must create the page... $pageId = $page->insertOn( $dbw ); @@ -1558,9 +1494,6 @@ class WikiRevision { return true; } - /** - * @return mixed - */ function importLogItem() { $dbw = wfGetDB( DB_MASTER ); # @todo FIXME: This will not record autoblocks