mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/DiscussionTools
synced 2024-09-23 10:29:11 +00:00
Add various, more specific type hints
* Add @var comments to untyped getService() calls so IDEs and tools are able to understand where the callers are. * Use the more specific IReadableDatabase where possible. * Fix missing import. Change-Id: I9c1153cb9fe872227753628a947f40bd5ee447fa
This commit is contained in:
parent
e45cd4ff8c
commit
0cf68818a8
|
@ -13,6 +13,7 @@ use ExtensionRegistry;
|
|||
use IContextSource;
|
||||
use IDBAccessObject;
|
||||
use LqtDispatch;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentParser;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentUtils;
|
||||
use MediaWiki\Extension\DiscussionTools\ContentThreadItemSet;
|
||||
use MediaWiki\Extension\Gadgets\GadgetRepo;
|
||||
|
@ -161,6 +162,7 @@ class HookUtils {
|
|||
// comments in the sections to be treated as transcluded from another page.
|
||||
CommentUtils::unwrapParsoidSections( $container );
|
||||
|
||||
/** @var CommentParser $parser */
|
||||
$parser = $services->getService( 'DiscussionTools.CommentParser' );
|
||||
$title = TitleValue::newFromPage( $revRecord->getPage() );
|
||||
return $parser->parse( $container, $title );
|
||||
|
|
|
@ -16,6 +16,7 @@ use DeferredUpdates;
|
|||
use ExtensionRegistry;
|
||||
use IDBAccessObject;
|
||||
use Iterator;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentParser;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentUtils;
|
||||
use MediaWiki\Extension\DiscussionTools\ContentThreadItemSet;
|
||||
use MediaWiki\Extension\DiscussionTools\Hooks\HookUtils;
|
||||
|
@ -72,6 +73,7 @@ class EventDispatcher {
|
|||
|
||||
$doc = DOMUtils::parseHTML( $html );
|
||||
$container = DOMCompat::getBody( $doc );
|
||||
/** @var CommentParser $parser */
|
||||
$parser = $services->getService( 'DiscussionTools.CommentParser' );
|
||||
return $parser->parse( $container, $title );
|
||||
}
|
||||
|
@ -396,6 +398,7 @@ class EventDispatcher {
|
|||
$dtConfig->get( 'DiscussionToolsAutoTopicSubEditor' ) === 'any' &&
|
||||
HookUtils::shouldAddAutoSubscription( $user, $title )
|
||||
) {
|
||||
/** @var SubscriptionStore $parser */
|
||||
$subscriptionStore = MediaWikiServices::getInstance()->getService( 'DiscussionTools.SubscriptionStore' );
|
||||
$subscriptionStore->addAutoSubscriptionForUser( $user, $title, $itemName );
|
||||
}
|
||||
|
@ -411,6 +414,7 @@ class EventDispatcher {
|
|||
public static function locateSubscribedUsers( Event $event, $batchSize = 500 ) {
|
||||
$commentName = $event->getExtraParam( 'subscribed-comment-name' );
|
||||
|
||||
/** @var SubscriptionStore $subscriptionStore */
|
||||
$subscriptionStore = MediaWikiServices::getInstance()->getService( 'DiscussionTools.SubscriptionStore' );
|
||||
$subscriptionItems = $subscriptionStore->getSubscriptionItemsForTopic(
|
||||
$commentName,
|
||||
|
|
|
@ -11,6 +11,7 @@ namespace MediaWiki\Extension\DiscussionTools\Notifications;
|
|||
|
||||
use EchoEventPresentationModel;
|
||||
use Language;
|
||||
use MediaWiki\Extension\DiscussionTools\SubscriptionStore;
|
||||
use MediaWiki\Extension\Notifications\Model\Event;
|
||||
use MediaWiki\Language\RawMessage;
|
||||
use MediaWiki\MediaWikiServices;
|
||||
|
@ -142,6 +143,7 @@ class SubscribedNewCommentPresentationModel extends EchoEventPresentationModel {
|
|||
$viewChangesLink,
|
||||
];
|
||||
|
||||
/** @var SubscriptionStore $parser */
|
||||
$subscriptionStore = MediaWikiServices::getInstance()->getService( 'DiscussionTools.SubscriptionStore' );
|
||||
$items = $subscriptionStore->getSubscriptionItemsForUser(
|
||||
$this->getUser(),
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
namespace MediaWiki\Extension\DiscussionTools\Maintenance;
|
||||
|
||||
use IDatabase;
|
||||
use Language;
|
||||
use Maintenance;
|
||||
use MediaWiki\Extension\DiscussionTools\Hooks\HookUtils;
|
||||
|
@ -14,6 +13,7 @@ use MWExceptionRenderer;
|
|||
use stdClass;
|
||||
use Throwable;
|
||||
use Title;
|
||||
use Wikimedia\Rdbms\IReadableDatabase;
|
||||
use Wikimedia\Rdbms\SelectQueryBuilder;
|
||||
|
||||
$IP = getenv( 'MW_INSTALL_PATH' );
|
||||
|
@ -24,7 +24,7 @@ require_once "$IP/maintenance/Maintenance.php";
|
|||
|
||||
class PersistRevisionThreadItems extends Maintenance {
|
||||
|
||||
private IDatabase $dbr;
|
||||
private IReadableDatabase $dbr;
|
||||
private ThreadItemStore $itemStore;
|
||||
private RevisionStore $revStore;
|
||||
private Language $lang;
|
||||
|
@ -94,7 +94,7 @@ class PersistRevisionThreadItems extends Maintenance {
|
|||
[ $nsInfo, 'wantSignatures' ]
|
||||
) ),
|
||||
'pp_propname IS NOT NULL',
|
||||
], IDatabase::LIST_OR ) );
|
||||
], IReadableDatabase::LIST_OR ) );
|
||||
|
||||
if ( $this->getOption( 'current' ) ) {
|
||||
$qb->where( 'rev_id = page_latest' );
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
namespace MediaWiki\Extension\DiscussionTools\Tests;
|
||||
|
||||
use DateTimeImmutable;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentParser;
|
||||
use MediaWiki\Extension\DiscussionTools\CommentUtils;
|
||||
use MediaWiki\Extension\DiscussionTools\ImmutableRange;
|
||||
use MediaWiki\Extension\DiscussionTools\ThreadItem\ContentCommentItem;
|
||||
|
@ -116,6 +117,7 @@ class CommentParserTest extends IntegrationTestCase {
|
|||
public function testGetTimestampRegexp(
|
||||
string $format, string $expected, string $message
|
||||
): void {
|
||||
/** @var CommentParser $parser */
|
||||
$parser = TestingAccessWrapper::newFromObject(
|
||||
MediaWikiServices::getInstance()->getService( 'DiscussionTools.CommentParser' )
|
||||
);
|
||||
|
@ -140,6 +142,7 @@ class CommentParserTest extends IntegrationTestCase {
|
|||
public function testGetTimestampParser(
|
||||
string $format, array $data, string $expected, string $message
|
||||
): void {
|
||||
/** @var CommentParser $parser */
|
||||
$parser = TestingAccessWrapper::newFromObject(
|
||||
MediaWikiServices::getInstance()->getService( 'DiscussionTools.CommentParser' )
|
||||
);
|
||||
|
@ -161,6 +164,7 @@ class CommentParserTest extends IntegrationTestCase {
|
|||
string $sample, string $expected, string $expectedUtc, string $format,
|
||||
string $timezone, array $timezoneAbbrs, string $message
|
||||
): void {
|
||||
/** @var CommentParser $parser */
|
||||
$parser = TestingAccessWrapper::newFromObject(
|
||||
MediaWikiServices::getInstance()->getService( 'DiscussionTools.CommentParser' )
|
||||
);
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
namespace MediaWiki\Extension\DiscussionTools\Tests;
|
||||
|
||||
use MediaWiki\Extension\DiscussionTools\SubscriptionItem;
|
||||
use MediaWiki\Extension\DiscussionTools\SubscriptionStore;
|
||||
use MediaWiki\User\UserIdentity;
|
||||
|
||||
|
|
Loading…
Reference in a new issue