getRepo() instanceof ForeignAPIRepo; } /** * Browsers don't support TIFF inline generally... * For inline display, we need to convert to PNG. * * @param File $file * @return bool */ public function mustRender( $file ) { return true; } /** * @param string $ext * @param string $mime * @param array $params * @return bool */ function getThumbType( $ext, $mime, $params = null ) { global $wgTiffThumbnailType; return $wgTiffThumbnailType; } /** * @param File|FSFile $image * @param string $filename * @throws MWException * @return string */ function getMetadata( $image, $filename ) { global $wgShowEXIF; if ( $wgShowEXIF ) { try { $meta = BitmapMetadataHandler::Tiff( $filename ); if ( !is_array( $meta ) ) { // This should never happen, but doesn't hurt to be paranoid. throw new MWException( 'Metadata array is not an array' ); } $meta['MEDIAWIKI_EXIF_VERSION'] = Exif::version(); return serialize( $meta ); } catch ( Exception $e ) { // BitmapMetadataHandler throws an exception in certain exceptional // cases like if file does not exist. wfDebug( __METHOD__ . ': ' . $e->getMessage() . "\n" ); return ExifBitmapHandler::BROKEN_FILE; } } else { return ''; } } public function isExpensiveToThumbnail( $file ) { return $file->getSize() > static::EXPENSIVE_SIZE_LIMIT; } }