MediaWiki
master
|
Public Member Functions | |
__construct (ServiceOptions $options, LoggerInterface $logger, ActorStoreFactory $actorStoreFactory, BlockRestrictionStore $blockRestrictionStore, CommentStore $commentStore, HookContainer $hookContainer, ILoadBalancer $loadBalancer, ReadOnlyMode $readOnlyMode, UserFactory $userFactory) | |
deleteBlock (DatabaseBlock $block) | |
Delete a DatabaseBlock from the database. More... | |
insertBlock (DatabaseBlock $block, IDatabase $database=null) | |
Insert a block into the block table. More... | |
purgeExpiredBlocks () | |
Delete expired blocks from the ipblocks table. More... | |
updateBlock (DatabaseBlock $block) | |
Update a block in the DB with new parameters. More... | |
Public Attributes | |
const | CONSTRUCTOR_OPTIONS |
Private Member Functions | |
checkDatabaseDomain (?IDatabase $db, $expectedWiki) | |
Throws an exception if the given database connection does not match the given wiki ID. More... | |
doRetroactiveAutoblock (DatabaseBlock $block) | |
Handles retroactively autoblocking the last IP used by the user (if it is a user) blocked by an auto block. More... | |
getArrayForAutoblockUpdate (DatabaseBlock $block) | |
Get an array suitable for autoblock updates. More... | |
getArrayForDatabaseBlock (DatabaseBlock $block, IDatabase $dbw) | |
Get an array suitable for passing to $dbw->insert() or $dbw->update() More... | |
performRetroactiveAutoblock (DatabaseBlock $block) | |
Actually retroactively autoblocks the last IP used by the user (if it is a user) blocked by this block. More... | |
Definition at line 47 of file DatabaseBlockStore.php.
MediaWiki\Block\DatabaseBlockStore::__construct | ( | ServiceOptions | $options, |
LoggerInterface | $logger, | ||
ActorStoreFactory | $actorStoreFactory, | ||
BlockRestrictionStore | $blockRestrictionStore, | ||
CommentStore | $commentStore, | ||
HookContainer | $hookContainer, | ||
ILoadBalancer | $loadBalancer, | ||
ReadOnlyMode | $readOnlyMode, | ||
UserFactory | $userFactory | ||
) |
ServiceOptions | $options | |
LoggerInterface | $logger | |
ActorStoreFactory | $actorStoreFactory | |
BlockRestrictionStore | $blockRestrictionStore | |
CommentStore | $commentStore | |
HookContainer | $hookContainer | |
ILoadBalancer | $loadBalancer | |
ReadOnlyMode | $readOnlyMode | |
UserFactory | $userFactory |
Definition at line 96 of file DatabaseBlockStore.php.
References MediaWiki\Block\DatabaseBlockStore\$actorStoreFactory, MediaWiki\Block\DatabaseBlockStore\$blockRestrictionStore, MediaWiki\Block\DatabaseBlockStore\$commentStore, MediaWiki\Block\DatabaseBlockStore\$loadBalancer, MediaWiki\Block\DatabaseBlockStore\$logger, MediaWiki\Block\DatabaseBlockStore\$options, MediaWiki\Block\DatabaseBlockStore\$readOnlyMode, MediaWiki\Block\DatabaseBlockStore\$userFactory, and MediaWiki\Config\ServiceOptions\assertRequiredOptions().
|
private |
Throws an exception if the given database connection does not match the given wiki ID.
?IDatabase | $db | |
string | false | $expectedWiki |
Definition at line 161 of file DatabaseBlockStore.php.
References Wikimedia\Rdbms\IDatabase\getDomainID().
Referenced by MediaWiki\Block\DatabaseBlockStore\insertBlock().
MediaWiki\Block\DatabaseBlockStore::deleteBlock | ( | DatabaseBlock | $block | ) |
Delete a DatabaseBlock from the database.
DatabaseBlock | $block |
MWException |
Definition at line 358 of file DatabaseBlockStore.php.
|
private |
Handles retroactively autoblocking the last IP used by the user (if it is a user) blocked by an auto block.
DatabaseBlock | $block |
Definition at line 485 of file DatabaseBlockStore.php.
References MediaWiki\Block\AbstractBlock\getTargetName().
Referenced by MediaWiki\Block\DatabaseBlockStore\insertBlock(), and MediaWiki\Block\DatabaseBlockStore\updateBlock().
|
private |
Get an array suitable for autoblock updates.
DatabaseBlock | $block |
Definition at line 451 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\updateBlock().
|
private |
Get an array suitable for passing to $dbw->insert() or $dbw->update()
DatabaseBlock | $block | |
IDatabase | $dbw | Database to use if not the same as the one in the load balancer. Must connect to the wiki identified by $block->getBlocker->getWikiId(). |
Definition at line 397 of file DatabaseBlockStore.php.
References MediaWiki\Block\AbstractBlock\getTargetUserIdentity(), and MediaWiki\Block\AbstractBlock\getWikiId().
Referenced by MediaWiki\Block\DatabaseBlockStore\insertBlock(), and MediaWiki\Block\DatabaseBlockStore\updateBlock().
MediaWiki\Block\DatabaseBlockStore::insertBlock | ( | DatabaseBlock | $block, |
IDatabase | $database = null |
||
) |
Insert a block into the block table.
Will fail if there is a conflicting block (same name and options) already in the database.
DatabaseBlock | $block | |
IDatabase | null | $database | Database to use if not the same as the one in the load balancer. Must connect to the wiki identified by $block->getBlocker->getWikiId(). |
MWException |
Definition at line 190 of file DatabaseBlockStore.php.
References MediaWiki\MainConfigNames\BlockDisablesLogin, MediaWiki\Block\DatabaseBlockStore\checkDatabaseDomain(), DB_PRIMARY, MediaWiki\Block\DatabaseBlockStore\doRetroactiveAutoblock(), MediaWiki\Block\DatabaseBlockStore\getArrayForDatabaseBlock(), MediaWiki\Block\DatabaseBlock\getBlocker(), MediaWiki\Block\DatabaseBlock\getId(), MediaWiki\Block\DatabaseBlock\getRawRestrictions(), MediaWiki\Block\AbstractBlock\getTargetUserIdentity(), MediaWiki\Block\AbstractBlock\getTimestamp(), MediaWiki\Block\AbstractBlock\getWikiId(), MediaWiki\Block\DatabaseBlockStore\purgeExpiredBlocks(), and MediaWiki\Block\DatabaseBlock\setId().
|
private |
Actually retroactively autoblocks the last IP used by the user (if it is a user) blocked by this block.
This will use the recentchanges table.
DatabaseBlock | $block |
Definition at line 516 of file DatabaseBlockStore.php.
MediaWiki\Block\DatabaseBlockStore::purgeExpiredBlocks | ( | ) |
Delete expired blocks from the ipblocks table.
Definition at line 125 of file DatabaseBlockStore.php.
References MediaWiki\Block\DatabaseBlockStore\$blockRestrictionStore, Wikimedia\Rdbms\Database\DbQuoter\addQuotes(), DeferredUpdates\addUpdate(), DB_PRIMARY, Wikimedia\Rdbms\IDatabase\delete(), if, Wikimedia\Rdbms\IDatabase\selectFieldValues(), Wikimedia\Rdbms\Platform\ISQLPlatform\timestamp(), and MediaWiki\MainConfigNames\UpdateRowsPerQuery.
Referenced by MediaWiki\Block\DatabaseBlockStore\insertBlock().
MediaWiki\Block\DatabaseBlockStore::updateBlock | ( | DatabaseBlock | $block | ) |
Update a block in the DB with new parameters.
The ID field needs to be loaded first.
DatabaseBlock | $block |
Definition at line 275 of file DatabaseBlockStore.php.
References $success, DB_PRIMARY, MediaWiki\Block\DatabaseBlockStore\doRetroactiveAutoblock(), MediaWiki\Block\DatabaseBlockStore\getArrayForAutoblockUpdate(), MediaWiki\Block\DatabaseBlockStore\getArrayForDatabaseBlock(), MediaWiki\Block\DatabaseBlock\getId(), MediaWiki\Block\DatabaseBlock\getRawRestrictions(), MediaWiki\Block\AbstractBlock\getTimestamp(), MediaWiki\Block\AbstractBlock\getWikiId(), and MediaWiki\Block\DatabaseBlock\isAutoblocking().
|
private |
Definition at line 65 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 68 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct(), and MediaWiki\Block\DatabaseBlockStore\purgeExpiredBlocks().
|
private |
Definition at line 71 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 74 of file DatabaseBlockStore.php.
|
private |
Definition at line 77 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 62 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 50 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 80 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
|
private |
Definition at line 83 of file DatabaseBlockStore.php.
Referenced by MediaWiki\Block\DatabaseBlockStore\__construct().
const MediaWiki\Block\DatabaseBlockStore::CONSTRUCTOR_OPTIONS |
Definition at line 55 of file DatabaseBlockStore.php.